In need to serialize an object and it's possible that the assembly version changed while deserialization. Additionally it can happen, that the object changes a bit.
The XmlSerializer does not store type information and if the object changes a bit, it just does not fail, but the XmlSerializer can not serialize private or internal properties from a super class I can not mark with attributes. So I had a look at the DataContractSerializer. It looks fine so fare, the problem with the private / internal properties of the super class would be solved, all properties have to be marked and I don't need them, but what about the type information? And how does the DataContractSerializer behave, if some properties are removed, renamed or added?