Prerequisites
Steps to reproduce
Note:
# Note: Since objects passing through the pipeline are automatically [psobject]-wrapped, the following
# pipeline alternative works correctly:
# Get-PhysicalDisk | ConvertTo-Json 3>$null | ConvertFrom-Json | Format-List
ConvertTo-Json (Get-PhysicalDisk) 3>$null | ConvertFrom-Json | Format-List
Expected behavior
CimClass : @{CimSuperClassName=MSFT_StorageFaultDomain; CimSuperClass=; CimClassProperties=System.Object[]; CimClassQualifiers=System.Object[];
CimClassMethods=System.Object[]; CimSystemProperties=}
CimInstanceProperties : {@{Name=ObjectId; Value={1}\\MKW11\root/Microsoft/Windows/Storage/Providers_v2\SPACES_PhysicalDisk.ObjectId="{47519af7-9162-11ee-9dc0-806e6f6e6963
}:PD:{f2881886-c54b-46f7-c1ac-8eb641e316de}"; CimType=14; Flags=35688452; IsValueModified=False}, @{Name=PassThroughClass; Value=; CimType=14;
Flags=572522500; IsValueModified=False}, @{Name=PassThroughIds; Value=; CimType=14; Flags=572522500; IsValueModified=False},
@{Name=PassThroughNamespace; Value=; CimType=14; Flags=572522500; IsValueModified=False}…}
CimSystemProperties : @{Namespace=root/microsoft/windows/storage; ServerName=MKW11; ClassName=MSFT_PhysicalDisk; Path=}
ClassName : MSFT_PhysicalDisk
Usage : Auto-Select
OperationalStatus : OK
# ... remaining properties omitted for brevity.
Actual behavior
CimClass : @{CimSuperClassName=MSFT_StorageFaultDomain; CimSuperClass=; CimClassProperties=System.Object[]; CimClassQualifiers=System.Object[];
CimClassMethods=System.Object[]; CimSystemProperties=}
CimInstanceProperties : {@{Name=ObjectId; Value={1}\\MKW11\root/Microsoft/Windows/Storage/Providers_v2\SPACES_PhysicalDisk.ObjectId="{47519af7-9162-11ee-9dc0-806e6f6e6963}:PD:{f2881
886-c54b-46f7-c1ac-8eb641e316de}"; CimType=14; Flags=35688452; IsValueModified=False}, @{Name=PassThroughClass; Value=; CimType=14; Flags=572522500;
IsValueModified=False}, @{Name=PassThroughIds; Value=; CimType=14; Flags=572522500; IsValueModified=False}, @{Name=PassThroughNamespace; Value=; CimType=14;
Flags=572522500; IsValueModified=False}…}
CimSystemProperties : @{Namespace=root/microsoft/windows/storage; ServerName=MKW11; ClassName=MSFT_PhysicalDisk; Path=}
That is, only the type-native properties were serialized, not also the ETS (adapted) ones.
Error details
No response
Environment data
PowerShell 7.5.0-preview.5 on Windows (also affects Windows PowerShell)
Visuals
No response
Prerequisites
Steps to reproduce
Note:
This is yet another manifestation of Objects are situationally invisibly [psobject]-wrapped, sometimes causing unexpected behavior. #5579
Note that the problem only arises for CDXML cmdlets that do not themselves wrap their output objects in
[psobject], such asGet-PhysicalDisk,Get-VirtualDisk, andGet-Volume; others, such asGet-Disk, do perform this wrapping.Expected behavior
Actual behavior
That is, only the type-native properties were serialized, not also the ETS (adapted) ones.
Error details
No response
Environment data
Visuals
No response