我有两个对象,每个对象包含20多个属性。
现在我有了$object1,$object2。
$properties = [ordered]@{ 'a'=$object1.propertyX; 'b'=$object1.propertyY; 'c'=$object2.propertyX; ... } $CombinedObject = New-Object âTypeName PSObject -Property $properties
这是可行的,但是,键入每个对象总共约40个属性需要很多时间。
您可以为每个对象的属性创建一个哈希表,并从中创建一个对象。我建议在每个属性前面加上AD和SQL,以了解它来自哪个对象并避免冲突。
$PropertyHT = @{} $object1.psobject.properties.name | ForEach-Object{ $PropertyHT.Add("AD$_",$Object1.$_) } $object2.psobject.properties.name | ForEach-Object{ $PropertyHT.Add("SQL$_",$Object2.$_) } $CombinedObject = New-Object âTypeName PSObject -Property $PropertyHT