从JSON自动解析属性和子属性

时间:2017-09-25 12:27:08

标签: json powershell

我有一个配置的JSON文件,用于确定我需要在对象上调用哪些属性。

由于PowerShell允许使用字符串变量作为属性,因此可以正常工作:

$config = Get-Content .\syncProperties.json -Raw | ConvertFrom-Json
$myPropertyFromJSON = $config.profileMappings[0].sourceField
echo $myObject.$myPropertyFromJSON

但是sourceField可以是像“SomeProperty.SubProperty”这样的子属性,当然这不起作用。

从JSON处理属性/子属性是一种很好的通用方法(阅读:我不想做一些讨厌的替换或拆分)

示例JSON:

{
    "profileMappings": [
        {
            "source": "AzureRm",
            "sourceField": "ExtensionProperty.extension_xyz_countryCode",
            "destinationField": "countryCode"
        },
        {
            "source": "AzureRm",
            "sourceField": "Department",
            "destinationField": "companyName"
        },
        { 
            "source": "EXO",
            "sourceField": "CustomAttribute1",
            "destinationField": "BuildingNo"
        }
    ]
}

0 个答案:

没有答案