Azure data factory 设置';复制数据';Azure数据工厂中名为@item().name的源文件夹
我有以下管道: Get Metadata1基本上检索子项(这是文件夹的集合,即Azure data factory 设置';复制数据';Azure数据工厂中名为@item().name的源文件夹,azure-data-factory,azure-data-lake,azure-data-factory-2,dynamic-content,Azure Data Factory,Azure Data Lake,Azure Data Factory 2,Dynamic Content,我有以下管道: Get Metadata1基本上检索子项(这是文件夹的集合,即originalFolder1,originalFolder2,等等) 在ForEach1活动中,我放置了复制数据活动 定义源数据集时,我希望使用检索到的文件夹名称作为路径。所以它是这样的:staticFolder1/staticFolder2/originalFolder1 我确实尝试在文件夹路径中使用了staticFolder1/staticFolder2/@item().name,但它总是抛出一个错误file
originalFolder1
,originalFolder2
,等等)
在ForEach1活动中,我放置了复制数据活动
定义源数据集时,我希望使用检索到的文件夹名称作为路径。所以它是这样的:staticFolder1/staticFolder2/originalFolder1
我确实尝试在文件夹路径中使用了staticFolder1/staticFolder2/@item().name
,但它总是抛出一个错误file not found
我遗漏了什么吗?不幸的是,在ADF中不能混合字符串和表达式,只能有一个或另一个 您可以做的是:
@concat(variables('SourceFolderName'), '/', string(item().name) )
假设您有一个名为SourceFolderName的变量,如果您的源文件夹每天都不同,那么该变量会很有用;否则,将其作为字符串
@concat('staticFolder1/staticFolder2/', string(item().name) )
然后,您可以连接ForEach活动的项以形成完整的路径。由@sowmen提供的注释是有意义的,但无需将项()名称转换为字符串格式 还有一个有趣的概念叫做字符串插值,它使我们的生活更轻松。请参阅下面适合您的场景的代码。希望有帮助:)
你从哪里复制的,是存储帐户吗?@BowmanZhu源和汇都来自DataLake
staticFolder1/staticFolder2/@{item().name}