ASP.NET Core項(xiàng)目結(jié)構(gòu)教程(4)
在這一章,我們將討論 ASP.NET Core項(xiàng)目在文件系統(tǒng)上的組成方式以及不同的文件和目錄都是如何協(xié)同工作的。
讓我們打開在前一章創(chuàng)建的FirstAppDemo項(xiàng)目。
在解決方案資源管理器窗口中,右擊解決方案節(jié)點(diǎn)并選擇“Open Folder in File Explorer”。
您將看到在它的根目錄下有兩個(gè)文件︰ FirstAppDemo.sln和global.json。
FirstAppDemo.sln文件是一個(gè)解決方案文件。Visual Studio多年來在默認(rèn)情況下一直使用sln這個(gè)擴(kuò)展名稱,如果你想在Visual Studio中打開應(yīng)用程序,你可以雙擊這個(gè)文件。
還有一個(gè)global.json文件。讓我們在Visual Studio中打開這個(gè)文件。
在global.json文件中,項(xiàng)目的設(shè)置是非常重要的。本項(xiàng)目設(shè)置告訴ASP.NET去哪里尋找你的源代碼以及哪些文件夾包含您的項(xiàng)目源碼。
一般新建的項(xiàng)目包含有兩個(gè)重要的文件夾:包含源碼的“source”文件夾和一個(gè)“test”文件夾。除非你的項(xiàng)目和源代碼都在這兩個(gè)文件夾中,否則項(xiàng)目將編譯失敗。如果有必要,你可以根據(jù)自己的需要改變這些設(shè)置。
我們現(xiàn)在的項(xiàng)目中沒有test文件夾。在test文件夾,你可以存放你的單元測試的項(xiàng)目。讓我們雙擊“src”文件夾。
你可以看到FirstAppDemo web應(yīng)用程序項(xiàng)目現(xiàn)在,雙擊文件夾。
這些都是應(yīng)用程序的源代碼文件,您也可以在解決方案資源管理器窗口中看到這個(gè)文件夾結(jié)構(gòu)。
如果您添加一個(gè)新文件到項(xiàng)目文件夾中,該文件將自動(dòng)被添加到該項(xiàng)目。如果你刪除一個(gè)文件,該文件也將從項(xiàng)目中刪除。項(xiàng)目與文件系統(tǒng)一切保持同步,這與以前的Asp.NET版本有點(diǎn)不同。
當(dāng)文件更改或?qū)⑻砑恿诵碌奈募r(shí),ASP.NET Core也會(huì)自動(dòng)編譯您的應(yīng)用程序。
案例
讓我們看看一個(gè)簡單的例子,在記事本中打開Startup.cs文件:
下面這行代碼用來響應(yīng)向該應(yīng)用程序發(fā)出的每個(gè) HTTP 請求,這里它僅響應(yīng) “Hello World !”
讓我們修改在上面的截圖中的字符串,改為“Hello World! This ASP.NET Core Application”,如以下所示:
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; namespace FirstAppDemo { public class Startup { // This method gets called by the runtime. // Use this method to add services to the container. // For more information on how to configure your application, // visit http://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { } // This method gets called by the runtime. // Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { loggerFactory.AddConsole(); if (env.IsDevelopment()){ app.UseDeveloperExceptionPage(); } app.Run(async (context) => { await context.Response.WriteAsync( "Hello World! This ASP.NET Core Application"); }); } } }
在文本編輯器中按Ctrl+S保存這個(gè)文件,然后回到web瀏覽器,刷新應(yīng)用程序。
你現(xiàn)在可以看到你的更改會(huì)反映在瀏覽器中。
- 這是因?yàn)?ASP.NET 會(huì)監(jiān)視文件系統(tǒng),當(dāng)文件發(fā)生更改時(shí)自動(dòng)編譯應(yīng)用程序。你不需要顯式地在 Visual Studio 中重新編譯應(yīng)用。
- 實(shí)際上,您完全可以使用一個(gè)不同的編輯器,像Visual Studio Code等。
- 所有您使用Visual Studio時(shí)需要做的就是通過運(yùn)行調(diào)試器啟動(dòng)web服務(wù)器。你也可以按 Ctrl + F5,可以編輯文件,保存文件,刷新瀏覽器來查看更改。
- 這是使用C#構(gòu)建 web 應(yīng)用程序的很好的流程。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET Core實(shí)現(xiàn)自動(dòng)依賴注入
這篇文章主要介紹了ASP.NET Core實(shí)現(xiàn)自動(dòng)依賴注入的示例,幫助大家更好的理解和學(xué)習(xí)使用.net技術(shù),感興趣的朋友可以了解下2021-04-04ASP.NET中的DataGridView綁定數(shù)據(jù)和選中行刪除功能具體實(shí)例
廢話就不多說了,都說.NET是托控件的,我就托給你們看,這個(gè)博文主要講 DataGridView 的數(shù)據(jù)綁定,和選中行刪除功能2013-12-12.Net中關(guān)于stirng轉(zhuǎn)System.Type的一種實(shí)現(xiàn)思路詳解
這篇文章主要給大家介紹了.Net中關(guān)于stirng轉(zhuǎn)System.Type的一種實(shí)現(xiàn)思路的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-05-05ASP.NET(C#)中操作SQLite數(shù)據(jù)庫實(shí)例
最近項(xiàng)目中有使用到SQLite數(shù)據(jù)庫,于是查找資料,編寫了一個(gè)ASP.NET基于C#語言的SQLite數(shù)據(jù)庫操作實(shí)例.大家看代碼就可以看懂了,和以往使用ADO.NET操作SQL數(shù)據(jù)庫類似.2009-12-12asp.net性能優(yōu)化之使用Redis緩存(入門)
本文主要介紹了asp.net性能優(yōu)化之使用Redis緩存的相關(guān)知識(shí)。具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-03-03SignalR Self Host+MVC等多端消息推送服務(wù)(三)
這篇文章主要為大家詳細(xì)介紹了SignalR Self Host+MVC等多端消息推送服務(wù)的第三篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06使用VS2022在ASP.NET?Core中構(gòu)建輕量級(jí)服務(wù)
本文詳細(xì)講解了使用VS2022在ASP.NET?Core中構(gòu)建輕量級(jí)服務(wù)的方法,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12C#調(diào)用動(dòng)態(tài)unlha32.dll解壓Lha后綴的打包文件分享
這篇文章介紹了,C#調(diào)用動(dòng)態(tài)unlha32.dll解壓Lha后綴的打包文件,有需要的朋友可以參考一下2013-09-09