Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Foreach循环出现问题,一旦找到第一个条件,就退出循环_C#_Linq_Foreach - Fatal编程技术网

C# Foreach循环出现问题,一旦找到第一个条件,就退出循环

C# Foreach循环出现问题,一旦找到第一个条件,就退出循环,c#,linq,foreach,C#,Linq,Foreach,我试图循环遍历xml节点及其childNode。在执行此操作时,我试图检查dataList是否包含childNode内部值,如果列表中没有该值,我将从xml中删除父节点。但我面临的问题是,在找到第一个条件后,foreach循环将结束,并且为循环从顶部统计数据。请在下面找到代码:更新列表删除节点=新列表() for(int i=0;ie.Equals(childNodesplit[0].ToString())) {

我试图循环遍历xml节点及其
childNode
。在执行此操作时,我试图检查
dataList
是否包含childNode内部值,如果列表中没有该值,我将从xml中删除父节点。但我面临的问题是,在找到第一个条件后,
foreach
循环将结束,并且为
循环从顶部
统计数据。请在下面找到代码:
更新
列表删除节点=新列表()

for(int i=0;ie.Equals(childNodesplit[0].ToString()))
{                                            
delNode=node.ChildNodes[0].ParentNode;
deletenode.Add(delNode);
}                                        
}
}
}
foreach(deletenode中的XmlNode nd)
{
if(nd.Name==“testNode”)
{
ElemList[i].远程儿童(nd);
}
}
}
有人能指出我在foreach循环中所犯的错误吗,这样它就不会在匹配一个条件时从循环中出现。 我更新了代码,但无法删除这些节点。

更新
我现在得到了解决方案,没有将
删除节点
列表作为每个循环的新列表。

您删除了节点的父节点,在循环中运行了该节点的子节点

delNode = node.ChildNodes[0].ParentNode;  //PARENT !                                
xmlNodeList[i].RemoveChild(delNode);  //REMOVE
如果必须删除它们,您可以:

  • 将它们保存到单独的列表中

  • 在函数结束时,遍历该列表并删除所有节点 里面,一个接一个


删除节点的父节点,在循环中运行节点的子节点

delNode = node.ChildNodes[0].ParentNode;  //PARENT !                                
xmlNodeList[i].RemoveChild(delNode);  //REMOVE
如果必须删除它们,您可以:

  • 将它们保存到单独的列表中

  • 在函数结束时,遍历该列表并删除所有节点 里面,一个接一个


我是否将它们保存在一个单独的
XmlNodeList
@SDLBeginner:不必,但这是一个可能的解决方案,是的。我添加了更新的代码,但无法删除这些节点。感谢您的帮助和建议,我知道了问题所在。我正在更新有问题的解决方案。我是否已将它们保存在单独的
XmlNodeList
@SDLBeginner:不必,但这是可能的解决方案之一,是的。我添加了更新的代码,但无法删除这些节点。感谢您的帮助和建议,我解决了这个问题。我正在更新有问题的解决方案。