bonjour,

j'essaye d'utiliser linq pour lire mon xml, mais j'ai un petit soucis:

Si j'utilise se code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
XDocument xmlDoc = XDocument.Load("monxml.xml");
            var query = from c in xmlDoc.Elements("stagiaires")
                        select c;
            foreach (var c in query)
            {
                Console.WriteLine(c);
            }
avec ce xml


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<stagiaires>
plein de balise
</stagiaires>

pas de soucis, par contre avec ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
XDocument xmlDoc = XDocument.Load("monxml.xml");
var query = from c in xmlDoc.Elements("stagiaires xmlns=\"http://www.unlien.be/xml/stagiaires/list\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.unlien.be/xml/stagiaires/list monxml.xsd\"")
                        select c ;
            foreach (var c in query)
            {
                Console.WriteLine(c);
            }
avec ce xml:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<stagiaires xmlns="http://www.unlien.be/xml/stagiaires/list"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.unlien.be/xml/stagiaires/list stagiaires.xsd">
plein de balise
</stagiaires>

ça plante magistralement à la requête avec le message
Le caractère ' ', valeur hexadécimale 0x20, ne peut pas être inclus dans un nom.
j'ai malheureusement besoin de faire avec la seconde solution

des idées?