Круто, спасибо iRon, это работает без нареканий!
мы пытаемся экспортировать данные в другие функции через конвейер, мы наблюдаем странное поведение в PowerShell.
Пример кода:
$Array = @()
$Obj1 = [PSCustomObject]@{
Member1 = 'First'
Member2 = 'Second'
}
$Obj2 = [PSCustomObject]@{
Member1 = 'First'
Member2 = 'Second'
Member3 = 'Third'
}
$Array = $Obj1, $Obj2
$Array | Out-GridView -Title 'Not showing Member3'
$Array = $Obj2, $Obj1
$Array | Out-GridView -Title 'All members correctly displayed'
В приведенном выше примере вы можете видеть, что, когда первый объект содержит только 2properties
,Out-GridView
CmdLet (и другие) показывают только 2properties
хотя второй объект имеет 3properties
, Тем не менее, когда первый объект в массиве имеет 3properties
он отображает их все правильно.
Это можно обойти? Потому что невозможно заранее предсказать, сколькоproperties
на объекте будет, и если объект с наиболееproperties
будет первым вarray
.