模板部署后输出 Azure SQL 数据库连接字符串
Output Azure SQL Database ConnectionString after template deployment
我有一个 ARM 模板,它(除其他外)在 Azure SQL 服务器上创建了一个数据库(这也是由模板创建的)。
我需要输出数据库ADO.NET连接字符串。
因为我不确定这个键叫什么,所以我输出了整个对象:
这是我在 JSON 模板文件中的内容:
"DatabaseConnectionString": {
"type": "object",
"value": "[listkeys(variables('dbResourceId'), variables('apiVersion'))]"
}
dbResourceId
100% 正确。如果我改为输出它,我会得到正确的 ID,并且 apiVersion
与我在创建数据库时使用的相同。
但是,我收到此错误:
"code": "NotFound",
"message": "Resource not found for the segment 'listkeys'.",
正在正确创建数据库
我有一个完全相同的 pattern/idea 服务总线,它工作得很好
救命啊,我快死了
好吧,看起来连接字符串根本就不是 属性,这就是为什么它不能用 listkeys 返回的原因,它需要 "calculated" 使用 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;')]"
}
我有一个 ARM 模板,它(除其他外)在 Azure SQL 服务器上创建了一个数据库(这也是由模板创建的)。
我需要输出数据库ADO.NET连接字符串。
因为我不确定这个键叫什么,所以我输出了整个对象: 这是我在 JSON 模板文件中的内容:
"DatabaseConnectionString": {
"type": "object",
"value": "[listkeys(variables('dbResourceId'), variables('apiVersion'))]"
}
dbResourceId
100% 正确。如果我改为输出它,我会得到正确的 ID,并且 apiVersion
与我在创建数据库时使用的相同。
但是,我收到此错误:
"code": "NotFound",
"message": "Resource not found for the segment 'listkeys'.",
正在正确创建数据库
我有一个完全相同的 pattern/idea 服务总线,它工作得很好 救命啊,我快死了
好吧,看起来连接字符串根本就不是 属性,这就是为什么它不能用 listkeys 返回的原因,它需要 "calculated" 使用 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;')]"
}