我有一个xml doc定义为
<Body>Stuff stuff stuff <FormatStuff> alsdkfafkafkaf </FormatStuff> </Body>
现在,这显然是有效的xml(我不会猜到)。我想只返回Body中的信息,以及<FormatStuff>
的单独XElement,所以它看起来像
东西,东西,东西
alsdkfafkafkaf
Body xelement的.Value显然会返回所有内容。谢谢你的帮助。
答案 0 :(得分:2)
为什么你不会猜到这是有效的XML?说实话,并不是很清楚你想要什么。如果您只想获取Body元素的文本节点,可以使用:
var textNodes = body.DescendantNodes()
.OfType<XText>()
如果要将所有节点的值连接在一起,您可以执行以下操作:
var text = string.Join("", body.DescendantNodes()
.OfType<XText>()
.Select(x => x.Value)
.ToArray());
(你可以使用节点类型,但是你只有一个IEnumerable<XNode>
并没有那么有用,正如我在尝试编译上面时发现的那样:)
您可以使用FormatStuff
获取body.Element("FormatStuff")
元素。