Bonjour,
Je rencontre un problème avec la serialisation d'objet enfant.
En gros, j'ai plusieurs classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 :
Quelqu'un voit d'où vient mon erreur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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);
Partager