我正在尝试选择主文档的子节点内的某些节点。
XmlNodeList nodes = xml.SelectNodes("//RECORD");
for (int i = 0; i < nodes.Count; i++)
{
Console.WriteLine("Time: " + nodes[i].SelectSingleNode("//content2").InnerText);
}
最终做的是,所有单个content2节点具有相同的值,但在XmlDocument中,每个'Record'的content2值都会递增。
如果我查看NodeList,每个content2节点例如从1增加到32。
为什么SelectSingleNode返回相同的节点?如何从孩子那里选择它?
答案 0 :(得分:3)
从XPATH字符串中省略“//”。这将查看所选XML的内部而不是整个文档。
答案 1 :(得分:1)
这是因为你在XPATH中为节点[i] .SelectSingleNode使用了// content2。 //在XPATH中意味着查看任何级别的所有实例。您应该执行// RECORD / content2的XPATH,然后循环这些节点。