如何将XmlNode从一个XmlDocument复制到另一个?

前端之家收集整理的这篇文章主要介绍了如何将XmlNode从一个XmlDocument复制到另一个?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在构建一个编写/编辑 XML文件的工具,我希望能够使用另一个XML文件中定义的模板片段填充它.

例如,该工具有一个“Add FooBarBaz Element”按钮,它为正在创建的新文档添加一个元素,我想通过从模板中复制它来添加FooBarBaz.

或者说这是我的模板文件

<Templates>
    <FooBarBaz Attribute="Value">
        <ChildElement/>
    </FooBarBaz>
</Templates>

然后,我可以使用.GetElementsByTagName(“FooBarBaz”)获取模板片段,并且我希望能够使用.AppendChild(templateNode)将其注入到新文档中.

但问题是,即使您使用.Clone()或.CloneNode(),也无法将XmlNode从一个XmlDocument复制到另一个XmlDocument,因为AppendChild()会抛出一个异常,说明该模板元素属于另一个上下文.

有没有一种简单的方法可以在System.Xml.XmlDocuments之间复制System.Xml.XmlNode?

解决方法

猜你在找的XML相关文章