有条件的取决于

问题描述

我正在尝试添加具有dependsOn条件的if,但假值还需要返回有效资源(它不能为null或为空),它依赖的资源存在在所有环境中。仅当环境为生产环境时,才应评估下面带有dependsOn的资源。我该怎么办?这取决于:

 "dependsOn": [
        "[if(equals(parameters('environment'),'prod'),resourceId('Microsoft.Compute/virtualMachines',parameters('vmName')),json('null'))]",],

我希望上面的方法能奏效,但不能奏效!请注意,资源本身也有一个condition,但是resourceId得到的结果都是通过两种方式评估的,所以我无法通过验证。

解决方法

您无需执行此操作,只需指定您依赖的资源,如果其中一些条件是无法部署,则不会破坏