将XmlDocument插入XmlDocument节点

时间:2010-10-06 11:31:43

标签: c# .net insert xmldocument xmlnode

我用一个节点创建了一个基本的XmlDocument:

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

我正在获取另一个我要在<Request>节点内插入的XmlDocument。 它对我不起作用:

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

它引发了一个例外。

如何在另一个XmlDocument节点中插入XmlDocument?

2 个答案:

答案 0 :(得分:14)

如果我没记错的话,在每个DOM实现中基本上都是一样的(.net,javascript,php等等。这应该可行。

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

true(importNode的第二个参数)应该意味着深入导入。

答案 1 :(得分:-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)

结束子

Ojala ayude,一个mi me sirve