2013-02-08 2 views
1

J'ai donc ce code C# qui fait un excellent travail à l'analyse du code XML suivant dans un tableau:analyse syntaxique XML: attributs au lieu des éléments

var doc = XDocument.Load(path).Root 
           .Elements() 
           .Select(y => y.Elements().ToDictionary(x => x.Name, x => x.Value)) 
           .ToArray(); 

XML:

<?xml version="1.0" encoding="utf-8" ?> 
<bbb> 
    <a> 
     <x>green</x> 
     <y>4</y> 
     <z>3</z> 
    </a> 
</bbb> 

mais je veux plutôt pour pouvoir écrire le XML comme

<a x="green" y="4" z="3" /> 

Comment changer le C# pour qu'il aboutisse au même résultat?

Répondre

3

Essayez ceci:

.Select(y => y.Attributes() 
       .ToDictionary(x => x.Name, x => x.Value))