You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Data Factory中合并字典是否有更简洁的实现方法?

在Azure Data Factory中优雅合并多字典(含动态元数据)

你遇到的问题本质是ADF表达式对动态函数嵌入对象字面量的解析限制——直接写{'datetime': utcNow()}会因为语法结构不被识别报错。这里有个更简洁易维护的方案:

  • 用createObject()函数单独生成动态元数据对象,再和原有参数对象通过union()合并

具体实现

直接替换原有表达式为:

union(parameters('a'), parameters('b'), createObject('datetime', utcNow()))

优势对比

相比你之前用json()+concat()的变通方法,这种方式:

  1. 完全基于ADF的原生对象操作,不需要拼接JSON字符串,避免转义错误
  2. 可读性更强,新增元数据字段直接在createObject()里追加键值对即可,比如:
    union(parameters('a'), parameters('b'), createObject(
        'datetime', utcNow(),
        'pipelineName', pipeline().PipelineName,
        'runId', pipeline().RunId
    ))
    
  3. 全程处理的是Object类型,后续转字符串或直接使用对象属性都更灵活

验证步骤

  1. 新建一个Object类型的变量
  2. 在Set Variable活动的Value中填入上述表达式
  3. 后续可通过string(variables('mergedObject'))转换为字符串输出,结果会包含所有合并后的键值对

内容的提问来源于stack exchange,提问作者JP-Ellis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:30:56