我正在構建一個作者/編輯XML文件的工具,我希望能夠使用另一個XML文件中定義的模板片段來填充它。如何將XmlNode從一個XmlDocument複製到另一個XmlDocument?
例如,該工具具有一個「添加FooBarBaz元素」按鈕,該元素添加一個元素到正在創建的新文檔中,並且我想通過從模板複製FooBarBaz來添加元素。
還是讓我們說這是我的模板文件:
<Templates>
<FooBarBaz Attribute="Value">
<ChildElement/>
</FooBarBaz>
</Templates>
我可以再搶用.GetElementsByTagName(「FooBarBaz」)的模板片段,我希望能夠把它注入新像.AppendChild(templateNode)這樣的文件。
但問題是,一個XmlNode不能)複製從一個XmlDocument的另一個,即使您使用.Clone()或.CloneNode(因爲使用appendChild()拋出一個異常,稱該模板元素屬於另一個上下文。
是否有一種簡單的方法可以在System.Xml.XmlDocuments之間複製System.Xml.XmlNode?