我一直在玩一些Azure App Configuration。
这是一个示例配置:
var environmentVariable = Environment.GetEnvironmentVariable("AppConfigurationConnectionString");
var config =
new ConfigurationBuilder()
.AddAzureAppConfiguration(options =>
{
options.Connect(environmentVariable)
.ConfigureKeyVault(kv =>
{
kv.SetCredential(new DefaultAzureCredential());
});
})
.Build();
services.AddSingleton<IConfiguration>(config);
在此之后,我可以将一个IConfiguration
实例注入我的服务并用于_config["settingName"]
访问配置设置。这一切都很好,真的很好。
我不知道该怎么做的一件事是将相关设置组映射到强类型对象(也就是说,不必手动完成所有操作,我可以这样做,但是......希望有更好的方法) .
在常规的 ASP.NET 核心配置中,我可以将相关设置设置分组如下(即在 中appsettings.json
)
{
"test": {
"key1": "value1",
"key2": "value2"
}
}
使用 IOptions 模式如下:
services.Configure<Test>(config.GetSection("test"));
这允许我将强类型IOptions<Test>
实例注入到我的类中。IMO 这比我_config["key1"]
用来获取配置设置的大型平面索引器要好一些。
Azure App Configruation 是否有一种方法可以让我自动配置可以注入到我的类中的强类型配置对象?
TIA