我的XML看起来像这样:
<names>
<goodnames>
<name>Alpha</name>
<name>Beta</name>
</goodnames>
<badnames>
<name>blabla</name>
</badnames>
</names>
现在我试图获取属于好名或坏名的所有子节点的值。我到目前为止尝试的代码是:
var goodnames = from el in doc.Root.Elements("goodnames") select el.Element("name");
不幸的是,这只返回第一个元素,在本例中是Alpha。但是,我想获得所有名称元素。
答案 0 :(得分:1)
如果您需要所有名称,请执行以下操作:
var allNames =
from e in doc.Root.Descendants("name")
select e.Value;
如果你只想要好名字或坏名字,试试这样的事情:
var goodnames =
from el in doc.Root.Elements("goodnames")
from n in el.Elements("name")
select n.Value;