将 Key Vault 设置绑定到 class
Bind Key Vault settings to class
在 ASP.NET Core 中,如果从 JSON app.settings 文件中读取配置,我可以像这样将一个部分绑定到一个对象:
services.Configure<MyPocoConfig>(Configuration.GetSection("Section"))
是否有一种直接的方法可以使用从 Azure Key Vault 读取的一组设置来执行此操作?我正在按照此处 MSDN 文档中所述的指南进行操作 https://docs.microsoft.com/en-us/azure/key-vault/vs-key-vault-add-connected-service#access-your-secrets-in-code
我可以像这样手动映射它们:
services.Configure<MyPocoConfig>(myPoco =>
{
myPoco.Option1 = Configuration["Option1"];
myPoco.Option2 = Configuration["Option2"];
});
我只是想知道是否有一种方法可以自动映射它们,因为它适用于存储在 app.settings JSON 中的配置。我确信它可以通过反射来完成,但我希望有一个内置的方式。
我尝试使用文章中描述的类别设置语法将设置放入类别中,并使用 services.Configure<MyPocoConfig>(Configuration.GetSection("category"))
阅读它们,但这不起作用。
编辑:
从 2020 年起, 现在可以使用类别--设置语法将设置放入类别中,并像 services.Configure<MyPocoConfig>(Configuration.GetSection("category"))
一样阅读它们
您可以通过按照以下模式命名您的 Secret 来实现相同的目的。
Section--Option1
Section--Option2
您可以使用以下方法按部分获取值,.NetCore 会自动映射它。
services.Configure<MyPocoConfig>(Configuration.GetSection("Section"))
在 ASP.NET Core 中,如果从 JSON app.settings 文件中读取配置,我可以像这样将一个部分绑定到一个对象:
services.Configure<MyPocoConfig>(Configuration.GetSection("Section"))
是否有一种直接的方法可以使用从 Azure Key Vault 读取的一组设置来执行此操作?我正在按照此处 MSDN 文档中所述的指南进行操作 https://docs.microsoft.com/en-us/azure/key-vault/vs-key-vault-add-connected-service#access-your-secrets-in-code
我可以像这样手动映射它们:
services.Configure<MyPocoConfig>(myPoco =>
{
myPoco.Option1 = Configuration["Option1"];
myPoco.Option2 = Configuration["Option2"];
});
我只是想知道是否有一种方法可以自动映射它们,因为它适用于存储在 app.settings JSON 中的配置。我确信它可以通过反射来完成,但我希望有一个内置的方式。
我尝试使用文章中描述的类别设置语法将设置放入类别中,并使用 services.Configure<MyPocoConfig>(Configuration.GetSection("category"))
阅读它们,但这不起作用。
编辑:
从 2020 年起, 现在可以使用类别--设置语法将设置放入类别中,并像 services.Configure<MyPocoConfig>(Configuration.GetSection("category"))
您可以通过按照以下模式命名您的 Secret 来实现相同的目的。
Section--Option1
Section--Option2
您可以使用以下方法按部分获取值,.NetCore 会自动映射它。
services.Configure<MyPocoConfig>(Configuration.GetSection("Section"))