Если вы не хотите иметь дело с concat()
, вам следует взглянуть на эту статью:
Вы можете указать Logic App parameters
, которые отличаются от ARM Template parameters
.
Таким образом, чтобы подвести итог, вы создаете параметр ARM, параметр приложения логики, а затем сопоставляете параметр ARM с приложением логики.параметр.Это немного сложно, но вы избегаете использования функции concat
.
Поэтому шаблон ARM должен выглядеть следующим образом:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"topicname": {
"type": "string",
"metadata": {
"description": "The name of the topic."
}
}
...
},
"variables": {
...
},
"resources": [
{
"type": "Microsoft.Logic/workflows",
"properties": {
"definition": {
...
"path": "/@{encodeURIComponent(encodeURIComponent(parameters('topicname')))}/messages",
...
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
},
"topicname": {
"type": "String"
}
}
},
"parameters": {
"$connections": {
...
},
"topicname": {
"value": "[parameters('topicname')]"
},
}
},
"dependsOn": [
]
}
]
}