Bonjour,

voila mon probleme:

j'ai une classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class Data
{
private int m_Id;
public int Id
        {
            get { return m_Id; }
            set { m_Id = value; }
        }
 
private Expression m_Condition; //ABSTRACT CLass
public Expression Condition
        {
            get { return m_Condition; }
            set { m_Condition = value; }
        }
}
comme on le vois j'ai une abstract class. mais la serialisation plante... depuis l'ajout de cette classe.

Serialisation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
public static string SerializeToString(object objSerial, Type objectType) //objectType = typeof(Data)
        {//Serialize un object en string
            MemoryStream stream = new MemoryStream();
            XmlSerializer formatter = new XmlSerializer(objectType); //Plante ici
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, Encoding.UTF8);
            xmlWriter.Flush();
            stream.Seek(0, 0);
            formatter.Serialize(xmlWriter, objSerial);
            return Encoding.UTF8.GetString(stream.GetBuffer());
        }
J'ai lu qu'il fallait ajouter se code a l'abstract classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
[System.Xml.Serialization.XmlInclude(typeof(Operation))]
[System.Xml.Serialization.XmlInclude(typeof(Comparison))]
mais sela ne fonctionne pas.

qql a t'il une idéé?

merci