检索兄弟 xml 元素

Retrieving a sibling xml element

我有一组 xml 个兄弟元素

<z>1</z>
<b>1</b>
<w>1</w>
<n>1</n>
<e>1</e>
<v>1</v>

XElement y 当前指向元素 e。我现在想看元素b.

代码

var y = e.ElementsBeforeSelf("b");

是否 return 仅包含元素 b 的集合。

当然,现在我只需要 return 单个元素 b。我并不总是确定元素 b 将是 e 之上的固定数量的元素。我在这里遗漏了一些非常明显的东西,因为我无法查看很多好的文章来弄清楚这一点。

我尝试过的事情:

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");

如何 select 和 return 仅从元素 e 开始的单个元素 b?

var y = e.ElementsBeforeSelf("b").First();

在 VB 这将是

    'y has element e
    Dim b As XElement
    b = y.Parent.<b>.SingleOrDefault

C#版本应该差不多。