Wie entferne ich xmlnode in einer foreach-Schleife?
Im folgenden Code verwende ich foreach loop, um jeden Knoten in der Knotenliste zu überprüfen und einige von ihnen zu entfernen. Nachdem ich einen Knoten entfernt habe, gab die foreach-Schleife den folgenden Fehler aus: "Die Elementliste wurde geändert. Der Aufzählungsvorgang konnte nicht fortgesetzt werden." Wie kann ich das vermeiden?
public static XmlNodeList Scan(XmlNodeList nodeList)
{
string elementValue = null;
foreach (XmlNode xmlElement in nodeList)
{
elementValue = xmlElement.InnerText;
if (elementValue.Length >= 6 && elementValue.Substring(0, 3) == "999")
{
continue;
}
else
{
XmlNode node = xmlElement.ParentNode;
node.RemoveChild(xmlElement);
}
}
return nodeList;
}