【发布时间】:2016-05-21 01:58:57
【问题描述】:
我正在尝试使用 Linq 解析 xml 文件:
XML 结构似乎都是通过属性而不是元素名称完成的。一切都是一个条目,我想获取具有特定条目名称的所有条目,例如“数据”:下面的示例数据。
<entry name="data">
<entry name="001" description="Player LEFT">
<entry name="001" description="Player LEFT" type="richtext">Joe Bloggs</entry>
</entry>
<entry name="002" description="Team LEFT">
<entry name="002" description="Team LEFT" type="richtext">Stack Overflow</entry>
</entry>
可能有 2 个条目或 100 个,所以在这种情况下,我需要返回“数据”属性下的所有内容。
目前我拥有的是:
XDocument doc = XDocument.Load(@"D:\element1.xml");
var stuff = doc.Descendants("entry").Where(x =>
(string)x.Attribute("data") == "data").ToList();
我可以获得特定的值,但不是全部。
【问题讨论】:
-
你所说的“具体值但不是全部”是什么意思?你能举个例子说明这会返回什么以及你希望它返回什么吗?
-
发布示例 XML,演示您当前的代码如何失败(如果当前发布的 XML 没有失败)。指示您期望得到什么以及使用该代码实际得到什么。谢谢
标签: c# xml linq linq-to-xml