如何将JSON传入Azure数据工厂V2中嵌入动态内容的Azure函数 [英] How to pass JSON into an Azure Function with embedded dynamic content in Azure Data Factory V2

查看:17
本文介绍了如何将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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆