Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Querying XElement using Linq - getting XElement deep down

I have a XML document like shown below:

<root>
  <level1>
    <level2>
      <level3>
       .....
      </level3>
      <level3>
       .....
      </level3>

    </level2>
  </level1>
</root>

I want to select all level3 elements, in XPath i would do root/level1/level2/level3 but how do i do it using LINQ?

like image 288
Brian Hvarregaard Avatar asked Feb 22 '26 08:02

Brian Hvarregaard


1 Answers

var elements = document.Descendants("level3").ToList();

or if you need to follow exact path

var elements = document.Element("root").Element("level1").Element("level2").Elements("level3").ToList();

or XPath, but still will XDocument

var elements = document.XPathSelectElements("root/level1/level2/level3").ToList();
like image 194
Alex Aza Avatar answered Feb 24 '26 22:02

Alex Aza



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!