Serialisation XML et héritage
Bonjour,
Je rencontre un problème avec la serialisation d'objet enfant.
En gros, j'ai plusieurs classe :
Code:
1 2 3 4 5 6 7 8
|
public abstract class Base
Public abstract class BaseDocument : List<Base>
public class News : Base
public class NewsDocument : List<News> |
Lorsque j'essaie de Serialiser newsDocument j'obtient une erreur indiquant que News est inconnu.
J'ai réussi a contourné le problème en reférenssant directment dans Base le type News seulement Base est voué a aller dans une assembly différente et il est donc hors de question de devoir référencer les class fille dans la class "mère".
Je n'arrive pas à le faire via les attributes Overrides, je pense m'y être mal pris :( :
Code:
1 2 3 4 5 6 7
|
XmlAttributeOverrides aor = new XmlAttributeOverrides();
XmlAttributes attrs = new XmlAttributes();
attrs.XmlElements.Add(new XmlElementAttribute("news", typeof(News)));
aor.Add(typeof(NewsDocument),"NewsDocument",attrs);
XmlSerializer xser = new XmlSerializer(typeof(NewsDocument),aor );
xser.Serialize(txtw, this); |
Quelqu'un voit d'où vient mon erreur ?