2013-03-11 40 views
4

我有一個xml,我必須得到該元素的名稱如何使用C#從XElement獲取元素名稱?

<Data> 
    <Test key="G" modifier="control" /> 
    <Test1 key="E" modifier="control" /> 
    <Test3 /> 
    <Test4 /> 
</Data> 

XDocument xd = XDocument.Load("..\\Cmd.xml"); 
IEnumerable<XElement> xeCmdData = Cmd.XPathSelectElements(".//Data"); 

foreach (XElement xeData in xeCmdData) 
{ 
    // here i am getting the whole xml how to get Element name ... 
    // Like <Data> 
    //   <Test key="G" modifier="control" /> 
    //   <Test1 key="E" modifier="control" /> 
    //   <Test3 /> 
    //   <Test4 /> 
    //  </Data> 
}    

如何獲得元素的名稱?

回答

6
XDocument xd = XDocument.Load("..\\Cmd.xml"); 
IEnumerable<string> names = xd.XPathSelectElements("//Data/*")  
           .Select(e => e.Name.LocalName); 

或者沒有的XPath

IEnumerable<string> names = xd.Descendants("Data")  
           .Elements() 
           .Select(e => e.Name.LocalName); 

結果:

Test 
Test1 
Test3 
Test4 
+1

謝謝先生...... ................. – 2013-03-11 10:42:32

+0

先生請看到這個問題也http://stackoverflow.com/questions/15333442/is-it-possible-to-add-multiple-repository-items-in-a-gridview-cells-using-devexp – 2013-03-11 11:20:21

+0

@ user2046631對不起,但我幾年來一直沒有使用DevExpress。我建議你在這個問題上繼續DevExpress論壇 – 2013-03-11 11:21:57

相關問題