Bonjour,

J'ai créé cette 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
public class TypeGen
    {
        public string Code { get; set; }
        public string Libelle { get; set; }
        public string PInc { get; set; }
 
        public TypeGen() { }
        public TypeGen(string code, string libelle, string pinc)
        {
            this.Code = code;
            this.Libelle = libelle;
            this.PInc = pinc;
        }
    }
puis un fichier.XML avec XLinq de cette manière

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
XDocument doc = new XDocument(new XDeclaration("1.0", "utf-8", "yes"),
            new XElement("TypesGeneriques",
 
                new XElement("Prev151eSituation",
                new XElement("param",
                    new XAttribute("code", "06"),
                    new XAttribute("libelle", "Divorcé(e)")),
                new XElement("param",
                    new XAttribute("code", "07"),
                    new XAttribute("libelle", "Veuf(ve)"))),
 
                new XElement("Prev151eNationalite",
                new XElement("param",
                    new XAttribute("code", "06"),
                    new XAttribute("libelle", "francaise")),
                new XElement("param",
                    new XAttribute("code", "07"),
                    new XAttribute("libelle", "allemande")))
                )
            );
 
        string s = Server.MapPath("~/App_Data/TypesGeneriques.xml");
        doc.Save(s);
Jusque là ce va ;
et enfin j'essaye de lire le fichier en question

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
string s1 = Server.MapPath("~/App_Data/TypesGeneriques.xml");
 
        var query = from q in XElement.Load(s1).Elements("Prev151eNationalite")
                      select new TypeGen
                      {
                          Code = (string)q.Element("param").Attribute("code"),
                          Libelle = (string)q.Element("param").Attribute("libelle"),
                          PInc = String.Empty
                      };
 
        foreach (TypeGen elt in query)
        {
            LitMessage.Text += "<br/> code = " + elt.Code + " param : " + elt.Libelle;
        }
Je voudrais retourner une list<T> contenant tous les param du noeud passé en paramètre. Mon problème est que je ne récupère que le premier param.
Je sèche depuis deux jours et je vois plus très clair.
Quelqu'un peut-il me donner un coup de main ?
Merci