したがって、PowerShell に次のプロパティを持つオブジェクトがあります (これは、1 つの項目のみを含む JSON 表現です)。
"NetworkResourcePermittedUsers": [
{
"PermittedUser": {
"UserName": "somedomain\\someuser"
},
"SecurityAccessLevel": {
"Level": "Read"
},
"SecurityAccessMode": {
"Mode": "Allow"
}
}
]
私がやりたいことは、内のフィールドにNetworkResourcePermittedUsers
基づいて配列をフィルタリングすることです。したがって、基本的には次のとおりです。Level
SecurityAccessLevel
SecurityAccessLevel.Level
LINQ では次のようにします。
networkResourcePermittedUsers.Any(x => x.SecurityAccessLevel.Level.Equals("myvalue"))
PowerShell では、次のようなものを使用できることを知っています。
$networkResourcePermittedUsers -contains "value"
ただし、この場合、パラメーターは、値オブジェクト ( 、、など)で-contains
構成される配列があることを前提としています。string
int
-contains
パラメータを使用して複雑なオブジェクト グラフをフィルタリングする方法はありますか??
何かのようなもの:
#this is bad code -- doesn't work
$networkResourcePermittedUsers -contains "myvalue" -path SecurityAccessLevel.Level