using System.Runtime.Serialization; using Vanara.Management; namespace Vanara.IO; /// Provides information about a VHD Set file. [DataContract(Name = "Msvm_VHDSetInformation", Namespace = @"root\virtualization\v2")] public class VirtualDiskSetInformation { /// /// A list of all files encompassed by the VHD Set file, including any unreferenced files and any parents of the root virtual hard /// disk. All files listed after the root virtual hard disk are unmanaged by this VHD Set file. This field may be empty if this /// information was not specifically requested. /// public string[] AllPaths { get; internal set; } /// The path of the VHD Set file. public string Path { get; internal set; } /// A list of GUIDs representing all of the snapshots contained by this VHD Set file. [IgnoreDataMember] public Guid[] SnapshotIdList => Array.ConvertAll(Ids, s => Guid.Parse(s)); [DataMember(Name = "SnapshotIdList")] internal string[] Ids { get; set; } internal static VirtualDiskSetInformation Parse(string embeddedInstance) => ManagementExtensions.Parse(embeddedInstance); }