我使用azure数据工厂活动获取元数据来获取所有文件和ForEachFile。在ForEachFile活动中,我有一个复制活动,它将每个文件复制到一个新的容器。这工作,但我必须连接到每个文件的时间戳。在Pipeline表达式构建器中,我有一个@dataset()。文件名。此文件名定义为数据集级别的参数。因此,在复制活动的数据集级别,我有这两个数据集属性Filename @item()。name Now @pipeline()。TriggerTime我已经尝试了这个@concat(dataset()。文件名,dataset()。现在)在管道表达式构建器中这不起作用,因为我得到以下错误消息=缺少所需的Blob。所以我的意思是这个构造@concat(dataset()。文件名,dataset()。现在)应该工作。但由于某些原因,数据工厂在循环foreachfile时无法将时间戳连接到每个文件。但是如果我只使用@dataset()。文件名将文件复制到接收器中指定的目录
先谢谢你
1条答案
按热度按时间mpgws1up1#
你可以在文件路径的表达式中使用
utcnow()
函数,以便在文件名中添加日期。表达式
@concat(dataset().Filename,'_', formatDateTime(utcnow(),'yyyy-MM-dd'))
给出了该表达式,并在设置变量活动中进行了测试。
结果: