动态引用数据工厂副本中的 Json 值

Dynamically refer to Json value in Data Factory copy

我有 ADF CopyRestToADLS activity,它可以正确地将 json 复杂对象保存到 Data Lake 存储。但我还需要将 json 值之一 (myextravalue) 传递给存储过程。我尝试在存储过程参数中将其引用为 @{activity('CopyRESTtoADLS').output.myextravalue 但出现错误

ExectuteStored procedure1 操作中 'inputs' 引用的 CopyRestToADLS 操作未在模板中定义

{
    "items": [1000 items],
    "count": 1000,
    "myextravalue": 15983444
}

我想尝试动态引用此值,因为 CopyRestToADLS 源 REST 数据集动态调用不同的 REST 端点,因此 JSON 对象的结构每次都不同。但是 myextravalue 始终存在于每个 JSON 调用中。

如何引用 myextravalue 并将其用作参数?

Rich750

您可以在 REST 数据源上创建另一个活动查找以获取 json 值。然后传给active的Stored Procedure。

是的,它将创建一个新的 REST 请求,而且它似乎是实现您的目的的一种简单方法。查找活动以获取源的内容并且不会保存它。

另一个解决方案可能是在复制活动完成后从复制活动输出文件中获取值。

很高兴你用这种方式解决了这个问题:

“我创建了一个数据流来从复制 Activity 保存动态命名输出 json 文件名的文件夹中读取。从示例文件导入架构后,我选择 myextravalue 作为唯一映射接收器映射部分。"