资源模板 - 根据条件计算数组项

Resource Template - Count array items on condition

是否可以根据资源模板中的特定条件计算数组中的项目数?类似于我们在 PowerShell 中使用 'Where-Object' 的方式。似乎 'length' 函数只能计算项目总数。

不,你不能那样做,除非你通过使用嵌套模板来破解。这只有在您想与特定对象进行比较时才有可能,并且您可能至少需要 2 个间接级别。

我通常会反对这样做,除非别无选择。

但如果你想这样做,你需要 this function, nested deployments and 我认为你需要在嵌套模板中使用状态参数来共享它们之间的状态。

另一个答案已经很老了,已经过时了。 ARM 模板函数 length(arg1)returns 数组中的元素数、字符串中的字符数或对象中的 root-level 属性。

https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-array#length