Live Chat Icon For mobile
Live Chat Icon

How do I add an XmlNode from one XmlDocument to an XmlNode in another XmlDocument?

Platform: WinForms| Category: XML

The XmlNode.AppendChild restricts you to add XmlNodes originated in the same XmlDocument. So, to do the above, here is a sample workaround:


[C#]
		// destParent and sourceParent are from different XmlDocuments.
		// This method will append the children of sourceParent to the destParent’s children.
		public static void TransferChildren(XmlDocument destDoc, XmlNode destParent, XmlNode sourceParent)
		{
			// Create a temporary element into which we will add the children.
			XmlElement tempElem = destDoc.CreateElement('Temp');
			tempElem.InnerXml = sourceParent.InnerXml;

			foreach(XmlNode node in tempElem.ChildNodes)
				destParent.AppendChild(node);
		}

[VB.Net]
		’ destParent and sourceParent are from different XmlDocuments.
		’ This method will append the children of sourceParent to the destParent’s children.
		Public Static  Sub TransferChildren(ByVal destDoc As XmlDocument, ByVal destParent As XmlNode, ByVal sourceParent As XmlNode)
			’ Create a temporary element into which we will add the children.
			Dim tempElem As XmlElement =  destDoc.CreateElement('Temp') 
			tempElem.InnerXml = sourceParent.InnerXml
 
			Dim node As XmlNode
			For Each node In tempElem.ChildNodes
				destParent.AppendChild(node)
			Next
		End Sub

Share with

Share on twitter
Share on facebook
Share on linkedin

Related FAQs

Couldn't find the FAQs you're looking for?

Please submit your question and answer.