如何使用@concat函数转义 ARM 模板中的单引号



我有带有目标数据集接收器的数据工厂管道模板,我希望使用资源管理器和Java Azure SDK进行部署:

{
"name": "[concat(parameters('factoryName'), '/', parameters('pipeline_pipelineConfiguration_pipelineTemplate_destinationDataset01'))]",
"type": "Microsoft.DataFactory/factories/datasets",
"apiVersion": "2018-06-01",
"properties": {
"linkedServiceName": {
"referenceName": "[parameters('pipeline_pipelineConfiguration_pipelineTemplate_destinationLinkedService01')]",
"type": "LinkedServiceReference"
},
"annotations": [],
"type": "DelimitedText",
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"fileName": {
"value": "[concat('@concat(utcnow('yyyy-MM-dd'),'-',parameters('pipeline_pipelineConfiguration_destination'),',.txt'')]",
"type": "Expression"
},
"container": ""
},
"columnDelimiter": ",",
"escapeChar": "\",
"firstRowAsHeader": true,
"quoteChar": """
},
"schema": []
},
"dependsOn": [
"[concat(variables('factoryId'), '/linkedServices/', parameters('pipeline_pipelineConfiguration_pipelineTemplate_DestinationLinkedService01'))]"
]
}

我得到例外:

com.fasterxml.jackson.core.JsonParseException: Unrecognized character escape ''' (code 39)

很可能是因为文件名的值参数。

提供文件名的最佳方法是什么,该日期是根据导出数据的时间计算的,并且部分名称取自参数?

使用变量并将值的计算作为此变量 或使用 replace(( 函数。

最新更新