目前維護的專案會根據執行環境使用對應的資料庫連線字串,因此NLog也需要能依據環境使用對應的連線字串。
在NLog.config中,資料庫連線字串的部分改為:
<connectionString>${gdc:item=LoggerDBConnectionString}</connectionString>
在Startup.cs的Configure中加入:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
GlobalDiagnosticsContext.Set("LoggerDBConnectionString", Configuration.GetConnectionString("LoggerDB"));
...
}
這樣就能根據不同的部署環境使用不同的連線字串
參考文章: