Get Element Node Value of XML using XElement in C#

Siddharth picture Siddharth · Dec 27, 2012 · Viewed 49.4k times · Source

I have the following XML file saved:

<E:Events xmlns:E="Event-Details">
   <Date>12/27/2012</Date>
   <Time>‎11:12 PM</Time>
   <Message>Happy Birthday</Message>
</E:Events>

I am using XElement to load the above XML file. I want to get the Element Value of Date, Time and Message i.e. 12/27/2012, ‎11:12 PM and Happy Birthday. How can I retrieve these values. I have searched a lot on this but could not find anything.

Any help appreciated...

Answer

Ravi Y picture Ravi Y · Dec 27, 2012

Have you just tried getting the element from your XElement node?

XElement.Element(" < element name >");

will return the nodes you need.

Try the code below:

string text = "<E:Events xmlns:E=\"Event-Details\"><Date>12/27/2012</Date><Time>‎11:12 PM</Time><Message>Happy Birthday</Message></E:Events>";
XElement myEle = XElement.Parse(text);
Console.WriteLine(myEle.Element("Date").Value);
Console.WriteLine(myEle.Element("Time").Value);
Console.WriteLine(myEle.Element("Message").Value);