I have a set of xml elements that are siblings
<z>1</z>
<b>1</b>
<w>1</w>
<n>1</n>
<e>1</e>
<v>1</v>
XElement y is currently pointing to Element e. I now want to look at Element b.
The code
var y = e.ElementsBeforeSelf("b");
does return a collection with just the element b.
Of course, now I need to return just the single element b. I am not always certain that Element b will be a fixed number of elements above e. I am missing something really obvious here because I have not been able with looking at a lot of good articles to figure this out.
Things I have tried:
var y = e.ElementsBeforeSelf().First().Element("b");
var y = e.ElementsBeforeSelf("b").Element("b");
var y = e.ElementsBeforeSelf().Single().Element("b");
var y = e.ElementsBeforeSelf().Single(x=>x.Name=="b").Element("b");
How do I select and return just the single element b, starting with element e?
var y = e.ElementsBeforeSelf("b").First();