如何在ADF表达式构建器中用参数化变量从JSON映射取值?
解决ADF动态访问JSON属性的表达式问题
你的问题出在表达式的拼接方式上,直接用.@{variables('secondActivity')}会把解析后的JSON对象转为字符串再和变量拼接,而不是真正访问JSON的属性。要动态访问JSON对象的属性,需要使用方括号语法。
正确表达式
假设你已经将第二个活动的value值存入名为secondActivity的变量中,正确的表达式应该是:
@{json(activity('1stActivity').output.firstRow.mapping)[variables('secondActivity')]}
如果没有存变量,直接引用第二个活动的输出值,表达式可以写成:
@{json(activity('1stActivity').output.firstRow.mapping)[activity('2ndActivity').output.value]}
原理说明
json(activity('1stActivity').output.firstRow.mapping)将第一个活动中字符串格式的mapping解析为JSON对象。- 使用
[变量/属性值]的方式,动态传入键名(这里是CST),就能直接取出对应的CUSTOM值。
内容的提问来源于stack exchange,提问作者amit.k.maurya.16
相关产品推荐
相关产品推荐

