我想从以下XMLLinq查询选择子节点
<root>
<parent>
<child>value 1</child>
<child>value 2</child>
</parent>
<parent>
<child>value 1</child>
<child>value 4</child>
</parent>
</root>
选择童的所有不同值的多个元素我尝试以下操作:
var vals = (from res in XmlResources.Elements("root").Elements("parent") select res)
.SelectMany(r => r.Elements("child")).Distinct().ToList();
,但不能得到的价值从它,给我的价值包装在标签,而不是Distinct
是否有可能显示两种方式来获取它 - 查询和链接aka lambda。
真棒,谢谢!没有意识到我可以直接去孩子,试图通过元素(“根”)链接到它。元素(“父母”) – 2012-07-09 08:51:10
为什么你只用'.Select(c => c .Value)'会更简单吗?另请注意它是'Select',而不是'select'。 – 2012-07-09 09:19:50
(我编辑过'select'到'Select',并且修正了'Descendants'和字符串文字的名字...我假设你不介意。我已经把lambda表达式留在了尴尬的地方语法的时刻,以防万一你真的想这样。) – 2012-07-09 09:21:56