使用Microsoft.Web/sites/extensions/sqlDatabase添加SQL数据库连接字符串来解决循环引用的资源问题。
以下是示例代码:
{
"variables": {
"appName": "[concat('webapp-', uniqueString(resourceGroup().id))]",
"sqlName": "[concat('sqldb-', uniqueString(resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Web/sites",
"apiVersion": "2018-02-01",
"name": "[variables('appName')]",
"location": "[resourceGroup().location]",
"properties": {
"name": "[variables('appName')]",
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', 'apphost-sku-plan')]",
"siteConfig": {
"appSettings": [
{
"name": "SQLCONNSTR_defaultSqlConnection",
"value": "[concat('Server=tcp:', reference(concat('Microsoft.Sql/servers/', variables('sqlName'))).fullyQualifiedDomainName, ',1433;Initial Catalog=mySampleDatabase;User Id=', parameters('sqlServerAdminLogin'), ';Password=', parameters('sqlServerAdminPassword'), ';')]"
}
]
}
}
},
{
"type": "Microsoft.Sql/servers",
"name": "[variables('sqlName')]",
"apiVersion": "2014-04-01-preview",
"location": "[resourceGroup().location]",
"properties": {
"administratorLogin": "[parameters('sqlServerAdminLogin')]",
"administratorLoginPassword": "[parameters('sqlServerAdminPassword')]",
"version": "12.0"
},
"resources": [
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2014-04-01-preview",
"name": "mySampleDatabase",
"dependsOn": [
"[concat('Microsoft.Sql/servers/', variables('sqlName'))]"
],
"properties": {
"edition": "Basic",
"collation": "SQL_Latin1_General_CP1_CI_AS",
"maxSizeBytes": "1073741824",
"requestedServiceObjectiveName": "Basic