i need help, i have some data coming in xml, i want to make an object out of, do something with it, serialize it back and send it away…
but it must be some sort of custom serialization.
xml like:
<Animals Ver="12" class="1" something="2">
<Dog Ver="12" class="2" something="17">
<Name> a </Name>
<Sound> oof </Sound>
<SomeOtherProp>12</SomeOtherProp>
</Dog>
<Cat Ver="12" class="3" something="4">
<Name> b </Name>
<Sound> meow </Sound>
</Cat>
</Animals>
needs to be presented as:
abstract class Animal :XmlMagic
{
public string Name{get;set;}
public string Sound{get;set;}
public void SomeMagicalXMLSerializationMethod()
{}
public void SomeMagicalXMLDeSerializationMethod()
{}
}
class Dog: Animal, XmlMagic
{
public int SomeOtherProp{get;set;}
public void SomeMagicalXMLSerializationMethod()
{}
public void SomeMagicalXMLDeSerializationMethod()
{}
}
The
XmlMagicyou are after is calledIXmlSerializableinterface: http://msdn.microsoft.com/en-us/library/system.xml.serialization.ixmlserializable.aspxIt provides you with 2 methods
ReadXmlandWriteXml, where you have to implement reading your object and writing it back. Then you use the standard .NetXmlSerializerto serialize/deserialize your objects.Let me know if you need more help.