Get Last Element in C# using XElement

2019-02-27 07:38发布

问题:

I have a XML feed loaded in an XElement.

The structure is

<root>
<post></post>
<post></post>
<post></post>
<post></post>
.
.
.
.
<post></post>
</root>

I want to directly get the value of the Last post. How I do that using XElement in C#.

Thanks.

回答1:

Or try this to get XElement:

XDocument doc = XDocument.Load("yourfile.xml");          
XElement root = doc.Root;
Console.WriteLine(root.Elements("post").Last());


回答2:

You can use LastNode property on root element:

XElement root = doc.Root;
XElement lastPost = (XElement)root.LastNode;


回答3:

var doc = XDocument.Parse(xml);
var lastPost = doc.Descendants("post").Last();


回答4:

Try this:

rootElement.Descendants().Last()

If you aren't sure there'll be any, you could also use LastOrDefault(). If there might be other elements besides within the , there's an overload of Descendants that will let you find just the posts you're looking for.



回答5:

Try this

XDocument doc= XDocument.Load("path to xml");
var last=doc.Root.LastNode;


标签: c# xml xelement