前言
最近透過Bot Framework v4 SDK Templates for Visual Studio來建立 Bot 時,
在Program.cs
及Startup.cs
都有透過ConfigurationBuilder
把appsettings.json
加進它的 Sources 之中Program.cs
的程式是在CreateHostBuilder
,如下,
1 | public static IHostBuilder CreateHostBuilder(string[] args) => |
Startup.cs
是在 ConfigureServices
Method 之中,
1 | public void ConfigureServices(IServiceCollection services) |
研究
所以在program.cs
加上中斷點來看一下,appsettings.json
是否已存在ConfigurationBuilder
的 Sources 之中,
可以發現,透過config.AddJsonFile("appsettings.json"
後ConfigurationBuilder
的 Sources 又多了一個appsettings.json
。
所以,在Program.cs
及Startup.cs
的AddJsonFile
把appsettings.json
加進去的程式碼是可以不用寫的。
除非,在環境變數中有設定值,你要透過appsettings.json
把它蓋過去。
預設的 Configuration 優先序請參考ASP.NET Core 的設定
那如果在ConfigureServices
要用到IConfiguration
怎麼辦呢?
就注入它後,拿來用就行了
1 | public Startup(IConfiguration configuration) |
參考資源
Bot Framework v4 SDK Templates for Visual Studio
ASP.NET Core 的設定
一吊錢在門限上(裡外都是半吊): 留一半,用一半