How to Get Element Names from XElement Using C#?
c#, linq-to-xml, xelement
Solution
XDocument xd = XDocument.Load("..\\Cmd.xml");
IEnumerable<string> names = xd.XPathSelectElements("//Data/*")
.Select(e => e.Name.LocalName);
Or without XPath
IEnumerable<string> names = xd.Descendants("Data")
.Elements()
.Select(e => e.Name.LocalName);
Result:
Test
Test1
Test3
Test4
Problem
I have a Xml and i have to get the element name ``` <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> } ``` How to get Element names ?