如何将JSON传入Azure数据工厂V2中嵌入动态内容的Azure函数 [英] How to pass JSON into an Azure Function with embedded dynamic content in Azure Data Factory V2
本文介绍了如何将JSON传入Azure数据工厂V2中嵌入动态内容的Azure函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在ADFv2中,我查找日期并将其传递给Azure函数。我可以这样传递数据:
@activity('GetLastDateProcessed').output.firstRow.LastDateProcessed
但是,如果我将其嵌入到JSON字符串中,如下所示:
{"lastProcessDate":"@activity('GetLastDateProcessed').output.firstRow.LastDateProcessed"}
我将此{"lastProcessDate":"@activity(‘GetLastDateProcessed’).output.firstRow.LastDateProcessed"}而不是{"lastProcessDate":"2019-11-13"}作为函数的输入。
上次我也尝试使用参数,但没有成功。
@concat('{"lastProcessDate":"', string(pipeline().parameters.lastProcessDate), '"}')
这里的问题是未设置参数。我将参数设置如下:
@activity('GetLastDateProcessed').output.firstRow.LastDateProcessed
但是,这是默认值,永远不会动态更新。如果我可以更新这个字符串,那么@CONCAT方法就会起作用,但是还不能弄清楚如何动态更新管道的参数。
另一个选项可以是管道变量,但我不知道如何引用该变量。
如何将字符串与动态内容连接在一起?
推荐答案
我可以通过创建第二个管道使其正常工作。这并不是最优的,但对于遇到同样问题的人来说是有效的。希望有人能找到比这更好的解决方案!
从第一个管道开始,我使用以下命令设置了第二个管道参数:
@activity('GetLastDateProcessed').output.firstRow.LastDateProcessed
我将第二个管道中的参数命名为lastProcessDate,这样就可以了:
@concat('{"lastProcessDate":"', string(pipeline().parameters.lastProcessDate), '"}')
这不是直截了当的,也不可能是微软期望我们解决这个问题的方式!
这篇关于如何将JSON传入Azure数据工厂V2中嵌入动态内容的Azure函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文