模板部署后输出Azure SQL数据库ConnectionString

时间:2016-11-10 15:56:52

标签: azure arm-template

我有一个ARM模板(其中包括)在Azure SQL服务器上创建数据库(也是由模板创建的)。

我需要输出数据库ADO.NET connectionstring。

因为我不确定调用了什么键,我输出的是整个对象: 这是我在JSON模板文件上的内容:     “DatabaseConnectionString”:{       “type”:“object”,       “value”:“[listkeys(变量('dbResourceId'),变量('apiVersion'))]”     }

dbResourceId 100%正确。如果我输出它,我得到正确的ID,apiVersion与创建数据库时使用的相同。 但是,我收到此错误:   “code”:“NotFound”,   “message”:“找不到段'listkeys'的资源。”,

正在正确创建数据库

我使用服务总线具有完全相同的模式/想法,它完美无缺 救命,这是杀了我

1 个答案:

答案 0 :(得分:7)

好吧,看起来连接字符串根本就不是属性,这就是为什么它不能用listkeys返回,需要使用concat“计算”

"DatabaseConnectionString": {
  "type": "string",
  "value": "[concat('Server=tcp:',reference(variables('sqlserverName')).fullyQualifiedDomainName,',1433;Initial Catalog=',variables('dbName'),';Persist Security Info=False;User ID=',reference(variables('sqlserverName')).administratorLogin,';Password=',reference(variables('sqlserverName')).administratorLoginPassword,';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;')]"
}