我有这个代码:
XmlDocument doc = new XmlDocument();
doc.Load("file.xml");
XmlNodeList nodes = doc.SelectNodes("//myElement"); // Line 4
for (int i = 0; i < 5; i++) // Line 6
{
nodes[i].ParentNode.RemoveChild(nodes[i]);
}
doc.Save("output.xml");
如果我在第 4 行设置断点,程序就可以正常工作。但是,如果我在任何超过该行的行(例如 6)上放置一个断点,我会收到object reference not set to instance of object
错误,因为节点中只有一个项目。
每次我在没有断点的情况下运行它时程序都会崩溃。但是,如果我在第 4 行设置断点,则节点的数量正确,85
并且一切正常。
即使我Thread.Sleep(10000)
在第 4 行之前和之后执行此操作,程序仍然会崩溃,因为它只找到 1 个节点。
有人知道为什么是这样吗?