如何替换 Azure 模板中的数组?

How to replace an array in Azure template?

我在模板参数中有“onprem”数组

"onprem":{
            "value":  [
                "1.1.1.0/16",
                "2.2.2.0/16"
              ]     
        }

并想在模板中替换它

"localNetworkAddressSpace": {
            "addressPrefixes":  [
              "1.1.1.0/16",
              "2.2.2.0/16"
            ]          
          }

下面给我一个错误

"localNetworkAddressSpace": {
            "copy": [{
              "name": "onpremBase",
              "count": "[length(parameters('onprem'))]",
              "input": {
                  "addressPrefixes": "[parameters('onprem')[copyIndex('onpremBase')]]"                               
              }
          }]  

您需要将数组值分配给 属性:

"localNetworkAddressSpace": {
     "addressPrefixes": "[parameters('onprem')]"
}

您尝试执行的操作将导致类似这样的结果(并且您的代码也不完全正确):

[
   {
       "addressPrefixes": "1.1.1.0/16"
   },
   {
       "addressPrefixes": "2.2.2.0/16"
   }
]

属性 迭代:https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-multiple#property-iteration