PowerShell:将具有mutliple值的数组添加到JSON中的值字段

时间:2018-04-12 06:13:03

标签: arrays json rest powershell

我有一些PowerShell(VMWare vRA API)的restmethods,我得到了一个开发请求的模板,然后我需要填写它(JSON格式)。 "数据"模板的一部分具有不同的属性,如:

Name                  : Test
selectedNetworks      : 
selectedServices      : 

我的问题: 如何获取我的数组$ networks(network1,network2,network3)来填充json元素" selectedNetworks"它变成这样:

"key":  "selectedNetworks",
"value":  {
"type":  "multiple",
"elementTypeId":  "STRING",
"items":  [
    {
        "type":  "string",
        "value":  "network1"
    },
    {
        "type":  "string",
        "value":  "network2"
    },
    {
        "type":  "string",      
        "value":  "network3"
    }
  ]
}

我知道如何添加"简单"像名字这样的价值观     $ WebRequestBodyData.Name =" $名称" 但是如何将上面的复杂格式转换为$ WebRequestBodyData.selectedNetworks?

非常感谢任何帮助!

谢谢和最诚挚的问候, 威乐

1 个答案:

答案 0 :(得分:0)

我可以这样解决:

$networkjson = '{"type":  "multiple", "elementTypeId":  "STRING", "items":  [] }' | ConvertFrom-Json
foreach($nwitem in $networks){
    $networkjson.items += $nwitem
}
$BodyData.selectedNetworks += $networkjson