这是几个小时我正在计算这个,但没有运气。我想问问如何删除多个节点。选择多个节点删除
当我做单节点我没有任何问题,但是当我添加条件“或”,或者如果它总是删除整个节点。
希望有人能帮助。
这是我迄今所做的:
XML
<ApplDetails>
<NodeLog>
<PName>
test123
</PName>
</NodeLog>
<NodeLog>
<PName>
test125
</PName>
</NodeLog>
<NodeLog>
<PName>
test126
</PName>
</NodeLog>
</ApplDetails>
C#代码
XmlDocument xdoc1 = new XmlDocument();
xdoc1.Load("D:\\nodes.xml");
foreach (XmlNode node in xdoc1.SelectNodes("ApplDetails/NodeLog"))
{
if (node.SelectSingleNode("PName").InnerText != "test123" || node.SelectSingleNode("PName").InnerText != "test125" )
{
node.ParentNode.RemoveChild(node);
}
}
xdoc1.Save("D:\\nodes.xml");
仅供参考,如果你只是学习,那么你不应该使用'XmlDocument'。阅读“LINQ to XML”。 – 2014-08-28 21:43:48
谢谢先生。主席先生,我知道我做了什么是不可能实现使用XmlDocument?好吧,先生,我将阅读关于“LINQ to XML”的阅读。 – mammoth 2014-08-28 21:48:45
'XmlDocument'是老方法。不要理会它。学习LINQ to XML代替。 – 2014-08-28 22:11:28