将Azure Portal获取的ASP.NET配置转换为local.settings.json格式
转换后的local.settings.json配置格式
直接用下面的JSON内容替换你的local.settings.json即可,完美适配ASP.NET Core的配置系统:
{ "IdentityServer": { "Host": "local.example.com", "ClientId": "MyClientId" }, "SlackApi": { "WebhookUrl": "https://hooks.slack.com/services/Some/Url", "DisplayName": "Slack bot" } }
转换逻辑说明
ASP.NET Core的配置系统支持通过冒号分隔的键名来映射分层的JSON结构,所以我们只需要把Azure Portal里导出的扁平键值对,按照冒号前的前缀(比如IdentityServer、SlackApi)分组,把同一前缀的键作为对应对象的属性值即可。这样配置系统在读取时就能正确识别这些分层配置,轻松注入到对应的选项类中。
内容的提问来源于stack exchange,提问作者chugh97




