2013-02-08 207 views
1

所以我有這樣的C#代碼,在解析下面的XML到一個數組做了偉大的工作:XML解析:屬性,而不是元素

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> 

,但我反而想能夠編寫XML如

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

我應該如何更改C#,以便它以相同的結果?

回答

3

試試這個:

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