我有一个名为appsettings.json
的文件,内容如下:
{
"MyConfig": {
"ConfigA": "value",
"ConfigB": "value"
}
}
在我的Startup.cs
文件中,我正在构建我的IConfiguration
对象:
public ConfigurationRoot Configuration { get; set; }
public Startup(ILoggerFactory loggerFactory, IHostingEnvironment environment)
{
var builder = new ConfigurationBuilder()
.SetBasePath(environment.ContentRootPath)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
public void ConfigureServices(IServiceCollection services)
{
//GetSection returns null...
services.Configure<MyConfig>(Configuration.GetSection("MyConfig"));
}
然而,Configuration.GetSection("MyConfig")
总是返回null
,尽管这个值在我的JSON文件中存在。 Configuration.GetSection("MyConfig:ConfigA")
却能正常工作。
我做错了什么?