Azure App Service - 数组中的应用程序设置数组
Azure App Service - App Settings Array In Array
我目前正在尝试在 Azure 应用服务配置中创建一个“复杂的”appsettings 结构,但我失败了。
我的appsettings.json看起来……像那样:
{
"AgentPools": [
{
"Id": "1",
"Name": "PoolName1",
"AllowedProjects": []
},
{
"Id": "2",
"Name": "PoolName2",
"AllowedProjects": [
"myproject1",
"myproject2"
]
}
]
}
我现在的问题是,似乎我在数组中的那个数组的设置中做错了什么。
配置类似于 Azure 应用服务 (Linux):
- AgentPools__0__Id -> 1 => 工作
- AgentPools__0__Name -> PoolName1 => 工作
- AgentPools__1__Id -> 2 => 工作
- AgentPools__1__Name -> Poolname2 => 工作
- AgentPools__1__AllowedProjects__0 -> myproject1 => 不工作
- AgentPools__1__AllowedProjects__1 -> myproject2 => 不工作
我是不是真的做错了什么,或者甚至不可能构建一个更复杂的结构?
我正在用 netcore 编程。
this article 中的示例建议仅当数组具有对象作为嵌套属性时才可以覆盖数组值,而不是直接覆盖值。
When the element structure includes an array, the array index should be treated as an additional element name in this path.
{
"SmtpServer": "smtp.example.com",
"Logging": [
{
"Name": "ToEmail",
"Level": "Critical",
"Args": {
"FromAddress": "MySystem@example.com",
"ToAddress": "SRE@example.com"
}
},
{
"Name": "ToConsole",
"Level": "Information"
}
]
}
setx SmtpServer smtp.example.com
setx Logging__0__Name ToEmail
setx Logging__0__Level Critical
setx Logging__0__Args__FromAddress MySystem@example.com
setx Logging__0__Args__ToAddress SRE@example.com
setx Logging__1__Name ToConsole
setx Logging__1__Level Information
我目前正在尝试在 Azure 应用服务配置中创建一个“复杂的”appsettings 结构,但我失败了。
我的appsettings.json看起来……像那样:
{
"AgentPools": [
{
"Id": "1",
"Name": "PoolName1",
"AllowedProjects": []
},
{
"Id": "2",
"Name": "PoolName2",
"AllowedProjects": [
"myproject1",
"myproject2"
]
}
]
}
我现在的问题是,似乎我在数组中的那个数组的设置中做错了什么。
配置类似于 Azure 应用服务 (Linux):
- AgentPools__0__Id -> 1 => 工作
- AgentPools__0__Name -> PoolName1 => 工作
- AgentPools__1__Id -> 2 => 工作
- AgentPools__1__Name -> Poolname2 => 工作
- AgentPools__1__AllowedProjects__0 -> myproject1 => 不工作
- AgentPools__1__AllowedProjects__1 -> myproject2 => 不工作
我是不是真的做错了什么,或者甚至不可能构建一个更复杂的结构?
我正在用 netcore 编程。
this article 中的示例建议仅当数组具有对象作为嵌套属性时才可以覆盖数组值,而不是直接覆盖值。
When the element structure includes an array, the array index should be treated as an additional element name in this path.
{
"SmtpServer": "smtp.example.com",
"Logging": [
{
"Name": "ToEmail",
"Level": "Critical",
"Args": {
"FromAddress": "MySystem@example.com",
"ToAddress": "SRE@example.com"
}
},
{
"Name": "ToConsole",
"Level": "Information"
}
]
}
setx SmtpServer smtp.example.com
setx Logging__0__Name ToEmail
setx Logging__0__Level Critical
setx Logging__0__Args__FromAddress MySystem@example.com
setx Logging__0__Args__ToAddress SRE@example.com
setx Logging__1__Name ToConsole
setx Logging__1__Level Information