如何通过Powershell将复杂参数传递给ADF

时间:2020-01-10 00:43:38

标签: powershell azure-data-factory

This answer帮助我完成了我需要做的事情,但是我需要传递给Azure Data Factory管道的参数之一是数组。

在用户界面中,我可以使用[“ x”,“ y”,“ z”]将其键入“默认参数”插槽,但是我不确定如何将该语法从语法上转换为Powershell。

我还想传递一个对象,该对象在ADF UI中的格式为{“ x”:{“ y”:[“ z”],“ a”:“ b”,“ c”:“ d“}}。

如何将非原始参数传递给管道?

谢谢。

2 个答案:

答案 0 :(得分:0)

不熟悉ADF,但为了将字符串转换为对象,建议您使用json字符串和ConvertFrom-Json。这是一个示例:

$json = '{ "X":{ "Y":[ "1","2","3"]}, "a" : "b", "c":"d"}'
$obj = $json | ConvertFrom-Json
$obj.X
$obj.X.Y
$obj.a
$obj.c

输出:

PS C:\WINDOWS\system32> $obj.X

Y        
-        
{1, 2, 3}

PS C:\WINDOWS\system32> $obj.X.Y
1
2
3

PS C:\WINDOWS\system32> $obj.a
b

希望对您有帮助。

答案 1 :(得分:0)

我不确定其他答案是否有效,但是我可以通过使用-ParameterFile标志而不是-Parameter标志并将其传递到JSON文件的路径来使其工作。无论如何,这对我来说是一个更干净的解决方案,因为它允许git跟踪我们的参数文件,而不是手动传递参数。谢谢!

相关问题