如何在LINQ to XML查询中选择多个元素(具有不同名称)?
我有一个类似这样的查询:
var elems = from descendant in doc.Descendants("foo")
select descendant;但是我想同时选择foo和bar,就像这样:
var elems = from descendant in doc.Descendants("foo" || "bar")
select descendant;但这只是为了说明我想要做的事情,我知道这不是正确的语法。我不知道用LINQ to XML应该怎么做,那么正确的方法是什么呢?
发布于 2011-01-26 18:58:57
您只能在这些方法中传入一个XName。只需将它们留在那里并执行正常的LINQ过滤即可。
var elems = doc.Descendants()
.Where(desc => desc.Name == "foo" || desc.Name == "bar");使用XPath是另一种方式。
var elems = doc.XPathSelectElements("//foo|//bar");发布于 2011-01-26 18:50:31
好吧,有一个选择:
var elems = doc.Descendants().Where(x => x.Name == (XName) "foo" ||
x.Name == (XName) "bar");https://stackoverflow.com/questions/4803598
复制相似问题