本文出自《從零開始學ASP.NET CORE MVC》
推薦文章:ASP.NET Core 行程外(out-of-process)託管
ASP.NET Core launchsettings.json檔案
在本影片中,我們將討論在ASP.NET Core專案中launchsettings.json
檔案的重要性。
launchsettings.json檔案
- 您將在專案根檔案夾的“Properties”檔案夾中找到此檔案。
- 當我們從Visual Studio或使用.NET Core CLI執行此ASP.NET Core專案時,將使用此檔案中的設定。
- 此檔案僅用於本地開發環境。我們不需要把它釋出到生產環境的Asp.net Core 程式中。
- 如果您希望您的Asp.Net Core 應用程式在釋出和部署應用程式時使用某些獨立的設定,請將它們儲存在appsettings.json檔案中。我們通常將應用程式的配置資訊儲存在此檔案中,比如資料庫連線字串。
- 我們還可以使用不同環境的appsettings.json檔案。例如,appsettings.Staging.json用於臨時環境。在- ASP.NET Core中,除了appsettings.json檔案外,我們還可以配置源,如環境變數,使用者金鑰,命令列引數甚至建立屬於我們自己的自定義配置源。
- 有關這些不同配置源的appsettings.json檔案的更多用法,我們的下一個影片會講。
ASP.NET Core中的launchSettings檔案
開啟您的程式,可以看到launchSettings.json檔案中的設定 資訊如下:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:3290",
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"StudentManagement": {
"commandName": "Project",
"launchBrowser": true,
"applicationUrl": "http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
請註意,我們有兩個配置資訊:
- IIS Express和StudentManagement
當我們透過按CTRL + F5
或只是F5
從Visual Studio執行專案時。
預設情況下,使用呼叫配置檔案名稱"commandName": "IISExpress",
。
另外一種情況,如果我們使用.NET Core CLI(dotnet run)執行專案,則使用帶有"commandName": "Project",
的配置檔案 。
我們可以透過單擊Visual Studio中的下拉串列來更改要使用的配置檔案中 .commandName屬性,修改預設設定。
預設值可以是:
- 專案
- IISExpress
- IIS
此值與專案檔案中的AspNetCoreHostingModel
元素的值會有對應關係,會一起指定要啟動的內部和外部Web伺服器(反向代理伺服器)。
commandName | AspNetCoreHostingModel的值 | Internal Web Server(內部伺服器) | External Web Server(外部伺服器) |
---|---|---|---|
專案 | 忽略託管設定的值 | 只使用一個Web伺服器 – Kestrel | 只使用一個Web伺服器 – Kestrel |
IISExpress | 行程內託管(InProcess) | 只使用一個Web伺服器 – IIS Express | 只使用一個Web伺服器 – IIS Express |
IISExpress | 行程外託管(OutOfProcess) | Kestrel | IIS Express |
IIS | 行程內託管(InProcess) | 只使用一個Web伺服器 – IIS | 只使用一個Web伺服器 – IIS |
IIS | 行程外託管(OutOfProcess) | Kestrel | IIS |
您還可以透過直接編輯launchSettings.json檔案中的設定,也可以使用Visual Studio提供的圖形使用者介面(GUI)更改設定。
透過GUI來設定 NEW ﹀ ﹀ ﹀
- 在Visual Studio的解決方案資源管理器中右鍵單擊專案名稱,然後從背景關係選單中選擇“屬性”。
單擊專案“屬性”視窗中的“除錯”選項卡,如下圖image.png
使用GUI我們可以更改launchSettings.json
檔案中的設定。
註意,環境變數“ASPNETCORE_ENVIRONMENT”設定的預設設定為“Development”。
我們可以將此值更改為Staging或Production
,具體取決於我們是在Staging還是Production
環境中執行此專案。
我們還可以新增新的環境變數。這些環境變數在我們的Asp.Net Core應用程式中都可用,我們可以包含根據這些環境變數的值有條件地執行的程式碼。
例如,請參考Startup.cs
檔案中的Configure()
方法中的以下程式碼
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
// 其他的程式碼
}
僅當環境為“ Development”
時,才會顯示“ 開發異常頁面”。
我們將在即將釋出的影片中詳細討論環境變數和開發人員異常頁面。
朋友會在“發現-看一看”看到你“在看”的內容