Få ut rätt element beroende på "pathen", XML

Permalänk
Medlem

Få ut rätt element beroende på "pathen", XML

Jag har kod som funkar emot en Xmlfil:

XDocument Xdoc = XDocument.Load(xmlUrl);
List<Product> prodList = new List<Product>();

IEnumerable<XElement> products = from xElement in Xdoc.Root.Elements()
select xElement;
foreach (var xElement in products)
{
Lägger till värden i en lista
}

Detta funkar om de elementen som ska läsas ligger i ett element i roten:
<products>
<product>
<infoElement></infoElement>
<infoElement></infoElement>
<infoElement></infoElement>
</product>
</products>

Men jag vill kunna göra det lite mer dynamiskt så att det funkar även om "infoElementen" ligger djupare in, tex:

<products>
<product>
<deeperIn>
<infoElement></infoElement>
<infoElement></infoElement>
<infoElement></infoElement>
</deeperIn>
</product>
</products>

Förstår att det är det här som ska ändras: from xElement in Xdoc.Root.Elements()
Där vill jag kunna på något vis ange vägen/pathen, tex products/product/deeperIn , men inte fått det att funka riktigt.

Någon som har ett enkelt svar på det? Antar att det är rätt "simpelt" egentligen.