重新升级此代码:
var tmpNewNode = xdoc.ImportNode(newNode, true);
if (oldNode.ParentNode != null)
{
oldNode.ParentNode.ReplaceChild(tmpNewNode, oldNode);
return true;
}
tmpNewNode 是用空的 xmlns 属性 (xmlns="") 创建的。有什么建议可以避免吗?
10倍
最佳答案
这里可能发生的情况是,newNode 来自未声明 namespace 的文档,但 oldNode 位于具有 namespace 的文档中。在这种情况下,节点将其空白 namespace 移至新文档并显式显示。老实说,如果这只是字符串比较的问题,那么在使用它之前从 XML 字符串中删除所有 xmlns=""实例不会有什么坏处。
关于c# - ImportNode 创建空的 xmlns 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4336367/