WebHost的配置
我們用vs2017新建一個空網站HelloCore
這里的CreateDefaultBuilde實際上已經在內部替我們做好了默認配置。
- UseKestrel 使用kestrel server來處理請求
- UseContentRoot 設置站點目錄
- ConfigureAppConfiguration
- ConfigureLogging
但是在這個地方呢,我們可以使用ConfigureAppConfiguration對配置進行更改,比如說我們添加jsonfile和commandline配置。我們可以添加一個ASP.NET配置文件appsettings.json
我們可以使用ConfigureAppConfiguration進行讀取appsettings.json
我們可以在Startup.cs中將配置讀出來,ApplicationBuilder就是我們構建管道的構建器,但是這個時候Configure方法中並沒有Configuration。我們可以添加引用using Microsoft.Extensions.Configuration;然后就可以在Configure中使用Configuration了
運行效果
我們也可以修改啟動的Url
IHostEnvironment和 IApplicationLifetime介紹
IHostEnvironment(宿主環境)
我們可以通過IHostEnvironment拿到ApplicationName(應用程序名稱)、ContentRootFileProvider(項目所在目錄文件提供程序)、ContentRootPath(項目所在目錄)、EnvironmentName(開發環境)、WebRootPath(WebRoot所在目錄)、WebRootFileProvider(WebRoot文件提供程序)
打印宿主環境信息
wwwroot目錄一般都是放靜態文件。
IApplicationLifetime
從命名的角度來看,ApplicationLifetime貌似是對當前應用生命周期的描述,而實際上它存在的目的僅僅是在應用啟動和關閉時對相關組件發送相應的信號或者通知而已。
ApplicationLifetime可以在應用開始、結束中、結束后的時候執行委托的事件
我們可以在Configure中注入IApplicationLifetime
運行效果
dotnet watch run 和attach到進程調試
dotnet watch run
dotnet watch run我們要用到Visual Studio Code開發工具,打開Visual Studio Code,使用組合鍵Ctrl+Shift+Y打開調試控制台,選擇終端,跳轉到Demo2文件夾下面
新建一個HelloCore的.net的MVC的網站
這時候我們就可以打開這個網站,選擇:文件--》打開文件夾
這時候我們打開終端執行命令dotnet run,可以很方便的執行,我們可以在
那我們怎么調試呢?我們可以先停止運行,然后我們點擊F5或者點擊調試進行調試
我們同時可以在我們的項目中打斷點進行調試,我們就可以查看我們的斷點信息
當我們執行的時候對代碼進行修改,網站是不會有變化的。
attach
我們可以通過終端直接運行,這樣就與我們.net調試工具vscode沒有什么關系了,我們需要用到一個工具.net watch run,在項目文件中添加以下代碼

這時候我們需要執行dotnet restore以下命令重新編譯一下
然后我們直接用 dotnet watch run來啟動

這時候我們訪問http://localhost:5000/會顯示

此時我們修改Startup.cs文件返回Hello World!11111,然后保存

我們可以看到網站進行了自動重啟,這時候刷新網站,發現數據已經改變。