将xml节点插入文档时出现System.argumentException

时间:2014-06-09 10:40:40

标签: asp.net xml vb.net xpath

我正在尝试将xml节点插入到xml文档中的另一个节点中,但每当我测试它时,我都会不断获得"system.ArgumentException"。我已经尝试了几种插入节点的方法,但无法解决如何修复它。

这里是代码:

Dim content As String = "<name>" + songName + "</name><artist>" + songArtist + "</artist><album>" +   songAlbum + "</album>"
            Dim doc As New XmlDocument
            doc.Load(getPath())
            Dim i As XmlNode = doc.CreateElement("song")
            i.InnerXml = content

            Try
                list.AppendChild(i)
            Catch

            End Try

            doc.Save(getPath())
            Return True
        End If

    End If

我从步进和使用try catch语句知道错误是&#34;要插入的节点来自不同的文档上下文。&#34;它发生在&#34; list.AppendChild(I)&#34;代码中的一行。

有人可以提出任何修复此错误的建议吗?

修改

我尝试使用doc.AppendChild()而不是list.AppendChild()并收到错误消息(显示在评论中)。

回顾上一个方法,我将另一个节点插入到我使用过的文件中&#34; root.AppendChild()&#34;所以我很确定list是使用

的正确变量

1 个答案:

答案 0 :(得分:0)

我理解的问题是,您需要先导入文档,然后附加到文档中。请参阅下面的示例。

http://www.dailyfreecode.com/forum/node-inserted-different-document-40.aspx