【发布时间】:2020-01-07 20:50:55
【问题描述】:
我的 local.settings.json 中有这些条目
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "whateverstorageaccountconnectionstring",
"FUNCTIONS_WORKER_RUNTIME": "dotnet"
},
"BusinessUnitMapping": {
"Values": {
"Connections": "CON",
"Products": "PRD",
"Credit & Affordability": "CAA",
"Accounts Receivable": "ARC",
"Identity": "IDT"
}
}
}
我有这段代码可以读取启动时的值
services.Configure<BusinessUnitMapping>(options => configuration.GetSection("BusinessUnitMapping").Bind(options));
BusinessUnitMapping 在哪里
public class BusinessUnitMapping
{
public Dictionary<string, string> Values { get; set; }
public BusinessUnitMapping()
{
Values = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
}
}
当我在本地运行函数应用程序时,它可以毫无问题地将这些设置读入 BusinessUnitMapping。
Azure 门户中应用程序设置的高级编辑只允许如下简单的键值对
[
{
"name": "AzureWebJobsDashboard",
"value": "DefaultEndpointsProtocol=Somevalue",
"slotSetting": false
},
{
"name": "AzureWebJobsStorage",
"value": "DefaultEndpointsProtocol=Somevalue",
"slotSetting": false
},
...
]
问题
- 这是在 Azure Function 中存储复杂应用设置的正确方法吗?
- 如何在 Azure 门户中为我已部署的 Function App 配置 BusinessUnitMapping?
-艾伦-
【问题讨论】:
-
我现在有同样的问题,但似乎仍然没有解决方案。需要采用扁平化方法。
标签: c# azure .net-core azure-functions