.NET Core 設定測試、正式環境
Contents
在設定appsetting.*.json
先說明要怎麼設定測試、正式環境。這邊先做個整理。
NetCore 預設環境
預設環境有
- Development
- Staging
- Production
系統上設定環境
要如何設定 Net Core 是正式環境還是測試環境呢?這邊可以設定系統環境變數。
可以更改變數有下面:
- DOTNET_ENVIRONMENT
- ASPNETCORE_ENVIRONMENT
The ASPNETCORE_ENVIRONMENT value overrides DOTNET_ENVIRONMENT.
這邊會後覆蓋前。ASPNETCORE_ENVIRONMENT
覆蓋DOTNET_ENVIRONMENT
。
更改環境設定需要重啟程式
ASPNETCORE_ENVIRONMENT
變數可以設定在執行環境(Runtime Environment)中。可以在環境變數設定ASPNETCORE_ENVIRONMENT
,但更改環境變數 VS啟動時,VS需要重啟。
使用 public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
的 IWebHostEnvironment 物件調用環境變數。
env.EnvironmentName()
讀出當前環境名稱。
IWebHostEnvironment 介面 (Microsoft.AspNetCore.Hosting) | Microsoft Learn
程式調整客製環境設定
開發中常看到有以下這些環境
- Development
- integration
- testing
- QA Test
- staging
- production
要怎麼知道看 UAT 程式呢?這邊下面會說。
Controller
- 一般三種環境判斷
|
|
- 萬用客製化環境判斷
|
|
View
|
|
Warning
你使用的時候沒效果,需要注意載入 TagHelpers
|
|
成功的話,滑鼠移過去可以看到提示,如下圖。
失敗的話,會是這樣。
相關可參考官方文件: ASP.NET Core 中的環境標籤協助程式 | Microsoft Learn
Note
IIS 部署需要注意,環境變數無法套用,IIS 裡面也有設定環境變數檔案。
TODO: 後續再做相關關聯筆記。
Note
這邊特別說一下,這邊
環境變數
可以設定appsetting.json
裡的內容,大小寫沒區分。後續會介紹。相關文章
- [.NETCore] ASP.NET Core - ENVIRONMENT 使用環境變數 ~ m@rcus 學習筆記
- ASP.NET Core 6.0 所有可能用到的 ASPNETCORE_* 環境變數總整理 | The Will Will Web
- 在 .NET Core 主控台應用程式中使用 appsettings.json 設定檔
彩蛋
- [廚餘回收] Windows 工作排程器(Task Scheduler)啟動程式取得與執行檔所在相同目錄 | 軟體主廚的程式料理廚房 - 點部落
- 如何在 ASP.NET Core 使用 AutoMapper - HackMD