在XDocument中计算子节点

时间:2011-08-18 14:04:29

标签: c# .net xml linq linq-to-xml

有没有办法在XDocument上计算子节点?

我找了一个计数方法或属性但找不到。

由于 利奥

2 个答案:

答案 0 :(得分:17)

var doc = XDocument.Load(fileName);
int descendantsCount = doc.Descendants().Count(); // counts ALL descendants elements
int childrenCount = doc.Root.Elements().Count(); // counts direct children of the root element

答案 1 :(得分:3)

或者......如果您知道元素的名称永远不会改变且它们始终存在,

XDocument xD = XDocument.Load(XmlFullFileName);
XElement xE_ParameterSets = xD.Root.Element("Report").Element("ParameterSets");
int index = ((IEnumerable<XElement>)xE_ParameterSets.Elements()).Count();