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

如何在ADF/Synapse中遍历对象并移除下划线适配复制操作

解决ADF/Synapse中对象名移除下划线的方法

方法一:管道表达式批量处理对象列表

如果对象列表是管道参数(数组类型),直接用map()和replace()函数批量清理下划线:

  • 假设原参数为@pipeline().parameters.ObjectList,处理表达式:
@map(pipeline().parameters.ObjectList, replace(item(), '_', ''))

处理后得到无下划线的数组['AdminUser', 'Adminprocess', 'TempUser'],可直接传入复制活动的表名参数。

  • 若需手动指定列表,用createArray()配合replace():
@createArray(
    replace('AdminUser', '_', ''),
    replace('Admin_process', '_', ''),
    replace('TempUser', '_', '')
)

方法二:数据流中处理表名字段

如果是在数据流内遍历表列表,通过派生列清理下划线:

  • 添加派生列转换,设置列名为CleanTableName,表达式写:
replace(TableName, '_', '')

(TableName为存储原对象名的字段)

  • 后续复制活动直接引用CleanTableName作为目标对象名。

方法三:元数据活动后预处理列表

如果对象列表来自Get Metadata活动返回的表集合:

  • 在Get Metadata后添加For Each活动,遍历返回的表项
  • For Each内部添加Set Variable活动,将当前表名处理后存入新数组变量:
    • 变量类型设为数组,赋值表达式:@concat(variables('CleanObjectList'), createArray(replace(item().name, '_', '')))
  • 最终用这个清理后的数组变量作为复制活动的输入列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 21:45:35