Azure Data Factory:如何从SetVariable传Lookup表值至Foreach活动
解决方法
你的变量table_name_list当前存储的是包含NAME字段的对象数组,Foreach可以遍历这个数组,但如果需要直接获取表名字符串,有两种处理方式:
方案一:修改SetVariable表达式,生成纯表名字符串数组
将SetVariable的表达式从原来的:
@activity('myLookupActivityName').output.value
修改为:
@map(activity('myLookupActivityName').output.value, (item) => item.NAME)
修改后,变量table_name_list的内容会变成纯字符串数组:
["table1", "table2"]
此时Foreach设置@variables('MyVariableName')后,就能直接遍历每个表名字符串。
方案二:保持变量不变,在Foreach内部提取表名
如果不想修改SetVariable的设置,Foreach依然使用@variables('MyVariableName')作为遍历对象,在Foreach内部的活动中,通过以下表达式获取当前表名:
@item().NAME
比如在Foreach里添加一个SetVariable活动,将其值设为@item().NAME,就能分别得到"table1"和"table2"。
内容的提问来源于stack exchange,提问作者Hari
相关产品推荐
相关产品推荐

