是否可以在 Azure 数据工厂中使用范围函数并将 ID 添加到结果中?

Is it possible to use the range function in Azure Data Factory and add ID's to the result?

假设我想在 Azure 数据工厂中使用 range 函数(在 ForEach 循环内)创建一个由整数组成的数组。这些整数代表 API 个与某些 ID 相关的页面,这些 ID 作为 ForEach 循环中的参数提供给我们。

我会像 @range(1, int(varMaxApiPages)) 那样使用它。 这给了我我的期望;整数数组: [1, 2, 3]

但是是否可以将相关 ID 附加到这些整数上?所以结果会是这样的:[{"someID", 1},{"someID", 2},{"someID", 3}]?

如:

def appendToArray(varMaxApiPages):
    arr1 = list(range(varMaxApiPages))
    json_array = [];
    for item in arr1:      
        jsonObejct = {"someID",item}
        json_array.append(jsonObejct)
    for item in json_array:
        print(item)

appendToArray(3)

正确的json数组应该是这样的[{"someID": 1},{"someID": 2},{"someID": 3}],我们可以实现。如果你不想要冒号,你可以想办法替换它。
我的调试结果如下:

  1. 我声明了3个数组类型的变量。变量 res 用于查看调试结果。

  2. 在Set variable1 activity中,通过@range(1,3)赋值给它。

  3. 然后foreach arr1。

  4. 在Foreachactivity里面,我们可以使用Append变量activity,添加表达式@json(concat('{"someID":',item(),'}'))。它会将 json 字符串转换为 json 对象并附加到数组 jsonArray

  5. 在foreachactivity外,将数组jsonArray的值赋值给数组res查看结果,可以省略这一步,使用arrayjsonArray直接。

就这些了。