我在构建模板时使用copy
函数部署链接模板 n ,同时增加对象变量(例如从vmRole1
到{ {1}})正在使用但看起来虽然我能够将一个合适的变量字符串连接在一起(例如vmRole2
),但它在传递给链接之前从未实际得到过评估模板。
在将模板发送到链接模板之前,有没有办法强制ARM模板实际评估循环内的连接字符串?
可变样本:
variables('vmRole1').roleInstanceCount
资源示例:
"vmRole1": {
...
"roleInstanceCount": 2,
...
}
答案 0 :(得分:1)
简单回答 - 没有。
奇怪的回答 - 也许,如果您使用另一组嵌套模板来验证这些值
答案很长 - 你这样做完全错了。我不知道你为什么要做这么奇怪的事情,试图假装你动态地构建一些东西......
尝试这样做(使用你的路线):
"value": "[variables(concat('vmRole', copyIndex())).roleInstanceCount]
但老实说,我将vmRole1 \ vmRole2 ... \ vmRole100废话转换为数组和引用对象,如下所示:
"value": "[variables('vmReferenceArray')[copyIndex()].propertyX]"
你的变量看起来像这样:
"vmReferenceArray": [
{
propertyX: ...
propertyY: ...
...
},
{
...
},
...
{
...
}
]