I have Class A. Class B and Class C are part of Class A.
Class A
{
//Few Properties of Class A
List<typeof(B)> list1 = new List<typeof(B)>()
List<typeof(C)> list2 = new List<typeof(C)>()
Nsystem NotSystem { get; set; } // Enum Property Type
}
public enum Nsystem {
A = 0,
B = 1,
C = 2
}
I want to Serialize Class A and want to produce XML with it; I also want to serialize list1 and list2 and also the Enum…
What is a good approach to Serialize this XML because I need the functionality of converting an Object into XML and XML into an Object …
What are some good options to do this?
Thanks
You could use the XMLSerializer:
For this to work properly you will also want xml annotations on your types to make sure it is serialized with the right naming, i.e.:
Edit:
Enumproperties are serialized by default with the name of the property as containing XML element and its enum value as XML value, i.e. if the propertyNotSystemin your example has the valueCit would be serialized asOf course you can always change the way the property is serialized by doing a proper annotation, i.e using
[XmlAttribute]so it’s serialized as an attribute, or[XmlElement("Foobar")]so it’s serialized usingFoobaras element name. More extensive documentation is available on MSDN, check the link above.