一、環境
環境:ASP.NET Core3.1
ASP.NET Core是一個全新的Web開發平台,微軟在它上面構建了MVC、SingalR、GRPC、Orleans這樣廣泛使用的Web框架,我們先以MVC框架為例介紹利用ASP.NET Core構建項目的常見名詞。這篇文章介紹wwwroot
ASP.NET Core MVC項目文件夾解讀
二、Content root和Web root
1、Content root
Content root是應用程序集所在的文件夾。都有哪些文件呢?
- 托管應用的可執行文件 (.exe)。
- 構成應用程序的已編譯程序集 (.dll)。
- 應用使用的內容文件,例如:
- Razor 文件(.cshtml、.razor)
- 配置文件(.json、.xml)
- 數據文件 (.db)
- Web 根目錄,通常是 wwwroot 文件夾。
2、Web root
Web 根目錄是公用靜態資源文件的基路徑,例如:
- 樣式表 (.css)
- JavaScript (.js)
- 圖像(.png、.jpg)
默認情況下,靜態文件僅從 Web 根目錄及其子目錄提供。 Web 根目錄路徑默認為 {content root}/wwwroot。 在構建主機時設置路徑,可指定不同的 Web 根目錄。
三、wwwroot
wwwroot
是一個存放靜態內容的文件夾,存放了諸如css,js,img等文件。靜態文件是ASP.NET Core應用直接提供給客戶端的資產,需要進行一些配置才能啟用這些文件的服務。靜態文件存儲在項目的Web根目錄中。默認目錄為{content root} / wwwroot,但是可以通過UseWebRoot方法進行更改。
1、在Web根目錄內提供文件
- 在Startup.Configure位置添加UseStaticFiles中間件 :
2、在Web根目錄之外提供文件
- 通過配置靜態文件中間件來訪問自定義的靜態資源文件
- 使用示例:
- 效果如下: