como remover xmlnode dentro de um loop foreach?
No código a seguir, eu uso o loop foreach para verificar cada nó na lista de nós e remover alguns deles. Depois de remover um nó, o loop foreach gera o seguinte erro: "A lista de elementos foi alterada. A operação de enumeração não pôde continuar". Como posso evitar isso?
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;
}