Bonjour à tous,

Je rencontre un petit problème avec la serialisation XML d'une de mes classes:

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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
 
public class Personne
{
    #region constructors
 
    public Personne()
    {
 
    }
 
    public Personne(string nom, string prenom, int age)
    {
        this.Nom = nom;
        this.Prenom = prenom;
        this.Age = age;
    }
 
    #endregion
 
 
    #region properties
 
    public string Nom { get; set; }
 
    public string Prenom { get; set; }
 
    public int Age { get; set; }
 
    public SexeEnum Sexe { get; set; }
 
    #endregion
}
 
public enum SexeEnum
{
    Homme,
    Femme,
    Aucun
}
Voici le code qui sérialise la 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
 
//_listPersonne, PersonneFileName, ZipPersonne ont été implémenté ailleurs, ce n'est pas eux le problème
 
XmlSerializer xs = new XmlSerializer(typeof(List<Personne>));
using (MemoryStream streamPersonneInfo = new MemoryStream())
{
    xs.Serialize(streamColumnInfo, _listPersonne);
    streamPersonneInfo.Position = 0;
    if (streamPersonneInfo.CanWrite)
    {
        ZipLayout.Entries.Add(streamPersonneInfo, PersonneFileName);
    }
    streamPersonneInfo.Close();
}
Lorsque j'execute j'ai une erreur au moment de la création du XmlSerializer, il me dit que
"Une erreur s'est produite lors de la réflexion du type 'System.Collections.Generic.List`1[Personne]'."
C'est la propriété Sexe de type enum qui pose soucis, car quand je l'enlève, tout marche bien, j'arrive bien à serializer.
Donc comment faire pour serializer une classe avec une propriété de type enum?