一个例子XML文件是这样的:的LINQ to XML选择孩子列出
<?xml version="1.0" encoding="UTF-8"?>
<game>
<name>bomber</name>
<behaviors-used>
<behavior id="Bullet" version="1">Bullet</behavior>
<behavior id="Fade" version="1">Fade</behavior>
<behavior id="Flash" version="1">Flash</behavior>
<behavior id="Sin" version="1">Sine</behavior>
<behavior id="scrollto" version="1">Scroll To</behavior>
</behaviors-used>
</game>
我有查询:
var data = (from item in loaded.Descendants("game")
select new
{
name = item.Element("name").Value,
behaviorlist = item.Element("behaviors-used").Value
}).Single();
这似乎很好地工作。但是,我现在需要检索behaviorlist
中的所有<behavior>
元素。我似乎无法这样做:
var bq = (from c in data.behaviorlist select new { behaviour = c.Element("behaviour")});
(引发无效的语法错误)。
如何检索所有行为,并且不仅可以访问其文本,还可以检查属性id
和version
?