使用依賴注入訪問配置
建議的方法是避免這樣做,而是使用 IOptions<TOptions> 和 IServiceCollection.Configure<TOptions>。
也就是說,將 IConfigurationRoot 可用的應用程式擴充套件起來仍然非常簡單。
在 Startup.cs 建構函式中,你應該具有以下程式碼來構建配置,
Configuration = builder.Build();
這裡 Configuration 是 IConfigurationRoot 的一個例項,並將此例項作為 Singleton 新增到 ConfigureServices 方法 Startup.cs 中的服務集合中,
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<IConfigurationRoot>(provider => Configuration);
例如,你現在可以訪問 Controller / Service 中的配置
public MyController(IConfigurationRoot config){
var setting1= config.GetValue<string>("Setting1")
}