私は、次の設定があります。登録子供IOptions
public void ConfigureServices(IServiceCollection services)
{
var configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();
services.Configure<AppSettings>(configuration);
}
public class AppSettings
{
public ChildSettings Child { get; set; }
public string Property { get; set; }
}
public class ChildSettings
{
public string ChildProperty { get; set; }
}
私appSettings.jsonは、次のようになります。
{
"Child": {
"ChildProperty": "Value"
}
"Property": "Value"
}
私はちょうど良い私のコントローラにIOptions<AppSettings>
を注入することができます:
public class MyController : Controller
{
public MyController(IOptions<AppSettings> options)
{
ChildSettings appSettings = options.Value;
}
}
設定オブジェクトに到達するためには、いくつかのレベルを下げる必要がありますあなたは欲しい。私はそうのようIOptions<ChildSettings>
を使用することができる方法はあります:
public class MyController : Controller
{
public MyController(IOptions<ChildSettings> options)
{
ChildSettings appSettings = options.Value;
}
}