我們在寫程式時,通常會把設定寫在appsettings.json裡面,但是不同的開發環境會有不同的設定值(例如:檔案產出路徑…etc)。.Net預設會使用appsettings.json這個檔案的設定值,但如果我們有不同的組態設定檔時(例如:DEV. SIT. UAT. PRD)。我們就要分別先新增appsettings.DEV.json, appsettings.SIT.json,appsettings.UAT.json,appsettings.PRD.json,其中的DEV.SIT.UAT會對應到不同的環境變數(appsettings.{環境變數}.json),有了不同環境的設定檔後,下面會來教大家要如何在本機開發環境切換不同的設定檔來進行測試。
- 本機環境切換設定檔
方案 => 右鍵 =>屬性
1.切換到偵錯頁籤,開啟debug啟動設定檔UI
2.設定環境變數,要切換到VT01就把Development換成VT01,就可以測試不同環境的設定值了
3.改完之後會自己長出launchSettings.json。下次直接從這裡改也可以
- 正式環境切換設定檔
launchSettings.json(application console要發佈過後才會有這個檔案),裡面有個environmentVariables,底下的ASPNETCORE_ENVIRONMENT會對應到他要抓取的設定檔名稱。我們只要修改ASPNETCORE_ENVIRONMENT就可以對應到不同的appsettings了
例如:appsettings.{ASPNETCORE_ENVIRONMENT}.json
Ref:
1.NET 6 應用程式如何切換環境和組態
2.C# – .NET Core environment variable returns null