如何在Bicep模块中动态创建连接字符串的属性名称?
解决Bicep中动态设置连接字符串属性名的问题
可以实现这个需求,Bicep支持计算属性名(用方括号包裹表达式),能让你动态指定对象的属性键名。
修改后的代码如下:
param connectionStringName string = 'TestConnectionString' param connectionStringValue string = '' param addConnectionString bool = false // 补充定义缺失的控制参数 resource connectionstring 'Microsoft.Web/sites/config@2023-01-01' = if (addConnectionString) { name: 'connectionstrings' parent: appServiceFunction properties: { [connectionStringName]: { value: connectionStringValue type: 'SQLServer' } } }
关键说明:
- 将
properties中的connectionStringName替换为[connectionStringName]后,方括号包裹的参数会被Bicep解析为参数的实际值(比如你预设的TestConnectionString),以此作为该属性的键名 - 最终生成的ARM模板中,连接字符串的名称会是你传入的参数值,而非固定的参数名本身
另外补充了addConnectionString参数的定义(原代码未包含该参数,需确保它已在模块中定义或从外部传入)。
内容的提问来源于stack exchange,提问作者Xyloto
相关产品推荐
相关产品推荐

