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

如何在ADF的ForEach活动中传递文件名至待执行管道?

解决方案步骤

1. 给子管道定义文件名参数

  • 打开需要调用的子管道,进入「参数」选项卡,添加一个字符串类型的参数,例如命名为FileName。

2. 在子管道的复制数据活动中引用参数

  • 子管道内的复制数据活动,无论是SFTP源还是Blob目标,需要指定文件名的位置直接引用该参数:
    • 源数据集的文件名配置为 @pipeline().parameters.FileName
    • 目标Blob的文件名同样用该表达式引用,保证文件对应关系正确。

3. 在ForEach活动中传递文件名到子管道

  • 返回主管道的ForEach活动内部,添加「执行管道」活动并选择目标子管道。
  • 在「参数」配置区域,将FileName参数的值设为 @item().name(前提是ForEach的遍历项来自Get Metadata活动的childItems,每个item的name字段对应SFTP上的文件名)。

补充:确保遍历项包含文件名信息

  • 若主管道用Get Metadata活动获取SFTP文件列表,需确认其「字段列表」勾选了Child items,这样返回的childItems集合中每个对象都会携带name属性,才能通过@item().name提取文件名。

关键说明

  • 无需给复制数据活动添加自定义参数,ADF的设计逻辑是通过子管道参数承接外部传入的值,再让复制活动绑定子管道参数来实现动态文件名的传递,这是官方推荐的标准实现方式。
  • 若遍历项来自其他数据源,只需将@item().name替换为对应数据结构中的文件名字段路径即可。

内容的提问来源于stack exchange,提问作者Codernator

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 19:22:03