Here is an example of counting all nodes submenuidin your XML document without loading it into memory:
var nodeCount = 0;
using (var reader = XmlReader.Create("test.xml"))
{
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element &&
reader.Name == "submenuid")
{
nodeCount++;
}
}
}
Console.WriteLine(nodeCount);
Or, if you prefer LINQ to XML:
var count = XDocument
.Load("test.xml")
.XPathSelectElements("//submenuid")
.Count();
source
share