Bicep 提供 fail 影响执行流的函数。
该 fail 函数主要用于根据逻辑条件强制执行约束和终止评估。 它通常在短路表达式中工作,例如 ??(合并运算符) 和 ?: (三元运算符) 。 有关详细信息,请参阅 逻辑运算符。
失败
fail(arg1)
该 fail 函数可用于在表达式中强制实施约束,但只能在短路函数中使用,即在确定结果后立即停止执行的作。
命名空间:sys。
参数
| 参数 | 必选 | 类型 | Description |
|---|---|---|---|
| arg1 | 是的 | 字符串 | 描述性错误消息,说明失败的原因。 |
例子
以下示例演示如何使用 fail。
anObjectParameter.?name ?? anObjectParameter.?id ?? fail('Expected anObjectParameter to have either a .name or a .id property')
在这里,合并运算符(??)可确保如果 存在 .name ,则执行会立即停止。 如果 .name 为 null 或未定义,则检查 .id 。 如果两者都缺失, fail 则会触发,从而阻止进一步执行。
x != 0 ? y / x : fail('x cannot be zero because it will be used as a divisor')
在本例中,三元运算符 (? :)在执行除法之前,检查 x 是否为非零。 如果 x 为 0, fail 则调用,在发生无效作之前停止执行。
后续步骤
- 有关涉及逻辑值的其他作,请参阅 逻辑运算符。