J'ai un document XML que j'essaie de parcourir et qui est conforme à SDMX. Voici un court extrait:Comment obtenir un XElement avec des caractères spéciaux dans la balise XML
<root>
<csf:DataSet id="J10">
<kf:Series>
<value> 107.92
</value>
</kf:Series>
</csf:DataSet>
</root>
Cependant, lorsque je tente de faire ce qui suit à l'aide de Linq Xml en C#, je reçois un XmlException.
XElement dataset = document.Element("csf:DataSet");
Le texte d'exception est: Le caractère ':', valeur hexadécimale 0x3A, ne peut pas être inclus dans un nom.
Je n'ai aucun contrôle sur le code XML. Des idées sur comment je peux surmonter cela?
Notez que le « : » est pas un caractère spécial dans une balise. C'est un séparateur qui sépare le préfixe d'espace de noms du nom local de l'élément. –
Il manque des déclarations d'espace de noms dans votre fichier XML. Voir mon exemple complet. Si vous essayez de l'exécuter sans "xmlns: crf = ..." la méthode Parse lève une exception. – m0sa
@Saunders, @ m0sa: Merci pour le heads-up. Le document complet a une entrée xmlns, je ne savais pas que le ns était pour l'espace de noms! Merci encore. – jehuty