我正在尝试从XElement中获取实际具有值的所有节点, 目前我正在使用此代码:
var nodes = from node in elem.Nodes()
where node.NodeType == XmlNodeType.Element &&
((XElement) node).Value.Length > 0
select node;
是否有内置运算符来执行此操作?
由于
答案 0 :(得分:1)
我不相信内置了这样的东西。你确定要包含具有子元素的元素吗?例如:
XElement e = new XElement("Foo", new XElement("Bar"));
Console.WriteLine(e);
Console.WriteLine(e.Value.Length);
这将打印:
<Foo>
<Bar />
</Foo>
0
...所以Foo
将被包含为“空”节点,即使它包含另一个元素。这绝对是你想要的吗?