ImportNode创建空xmlns属性

Guy*_*Guy 9 .net c# xml xmldocument

重新代码:

   var tmpNewNode = xdoc.ImportNode(newNode, true);

    if (oldNode.ParentNode != null)
    {
        oldNode.ParentNode.ReplaceChild(tmpNewNode, oldNode);
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

使用空xmlns属性(xmlns ="")创建tmpNewNode.有什么建议我怎么能避免呢?

10倍

Mar*_*kXA 8

这里可能发生的是newNode来自没有声明名称空间的文档,但oldNode位于带有名称空间的文档中.在这种情况下,节点将其空白名称空间转移到新文档,并显式显示.老实说,如果它只是字符串比较的问题,那么在使用它之前从XML字符串中删除xmlns =""的所有实例都不会有什么坏处.