J'ai deux classes dont l'une est héritée de l'autre.XmlSerializer Sérialisation personnalisée
Par exemple Animal c'est une classe de base et Dog c'est une classe héritée.
J'ai rempli une collection de listes et je voudrais la sérialiser comme une collection de listes.
Est-ce possible?
string serializedResult = XmlSerializeHelper<List<Animal>>.Serialize(result.ToList());
Where result is a List<Dog> collection.
et la mise en œuvre de XmlSerializeHelper est la suivante:
public class XmlSerializeHelper<T> where T : class
{
public static string Serialize(object o)
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
StringWriter stringWriter = new StringWriter();
xmlSerializer.Serialize(stringWriter, o);
return stringWriter.ToString();
}
public static T Deserialize(string xml)
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
StringReader stringReader = new StringReader(xml);
return (T)xmlSerializer.Deserialize(stringReader);
}
}