2010-10-06 20 views
7

que creó un XmlDocument básico con un nodo:inserción XmlDocument en un nodo XmlDocument

XmlDocument bigDoc = new XmlDocument(); 
bigDoc.LoadXml("<Request></Request>"); 

y yo estoy poniendo otra XmlDocument que quiero insertar dentro <Request> nodo. No funciona para mí:

XmlNode requestNode = bigDoc.FirstChild; 
requestNode.AppendChild(anotherXMLDocument); 

Se thorows una excepción.

¿Cómo puedo insertar un XmlDocument dentro de otro nodo XmlDocument?

Respuesta

14

si recuerdo bien que es básicamente el mismo en todas las implementaciones DOM alrededor (.net, javascript, php, etc esto debería funcionar.

XmlNode requestNode = bigDoc.FirstChild; 
requestNode.AppendChild(
    requestNode.OwnerDocument.ImportNode(
     anotherXMLDocument.DocumentElement, true)); 

El verdadero (segundo argumento para importNode) debe significar la importación de profundidad.

+0

no se pudo aleta d eso en XmlDocument –

+0

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.importnode.aspx – Kris

+0

¡¡Finalmente !! ¡gracias! – Rodniko

-1
Public Sub rutina(ByRef Sobre As String, ByVal Cfe As String) 
    'Agrega CFE al final de sobre, que puede ya contener 
    'otro(s) CFE 

    'Abre el sobre. 
    Dim doc As New XmlDocument() 
    doc.Load(Sobre) 

    'Abre el xml con el nuevo CFE 
    Dim doc2 As New XmlDocument() 
    doc2.Load(Cfe) 

    'Importa el CFE al final del sobre (antes de </Fin>) 
    Dim newBook As XmlNode = doc.ImportNode(doc2.DocumentElement, True) 
    doc.DocumentElement.AppendChild(newBook) 

    doc.Save(Sobre) 

End sub

Ojala AYUDE, a mi me Sirve

Cuestiones relacionadas