Asp.net 在每次函数调用时向XML添加新的子节点

Asp.net 在每次函数调用时向XML添加新的子节点,asp.net,xml,vb.net,Asp.net,Xml,Vb.net,我有一个XML文件和一个函数,该XML作为字符串传递给该函数。我已经在Xmldocument中加载了这个字符串,需要在一个节点下插入几个子节点。此函数返回修改后的XML字符串。我希望无论何时调用这个函数,都会添加新的子节点,目前,它只添加一次子节点 我需要覆盖XML文件吗?如果是这样,我如何用添加了新子节点的新节点替换节点,以便在再次调用函数之前添加子节点 我的代码如下所示: Dim doc As New XmlDocument doc.LoadXml(applicationXml) Dim p

我有一个XML文件和一个函数,该XML作为字符串传递给该函数。我已经在Xmldocument中加载了这个字符串,需要在一个节点下插入几个子节点。此函数返回修改后的XML字符串。我希望无论何时调用这个函数,都会添加新的子节点,目前,它只添加一次子节点

我需要覆盖XML文件吗?如果是这样,我如何用添加了新子节点的新节点替换节点,以便在再次调用函数之前添加子节点

我的代码如下所示:

Dim doc As New XmlDocument
doc.LoadXml(applicationXml)
Dim parentNode As XmlNode = doc.GetElementsByTagName("prList").Item(0)

Dim newElement As XmlNode = doc.CreateNode(XmlNodeType.Element, "gate.util.persistence.LanguageAnalyserPersistence", Nothing)

Dim runtimeParamsElement As XmlNode = doc.CreateNode(XmlNodeType.Element, "runtimeParams", Nothing)
Dim xa As XmlAttribute = doc.CreateAttribute("class")
xa.Value = "gate.util.persistence.MapPersistence"
runtimeParamsElement.Attributes.Append(xa)

localMapElement = doc.CreateNode(XmlNodeType.Element, "localMap", Nothing)
featuresElement.AppendChild(localMapElement)

newElement.AppendChild(featuresElement)

Return doc.InnerXml

您没有显示足够的代码来确定确切的问题。您正在尝试替换哪个节点?特色从何而来?以下是一些答案:

是,您需要使用新文档替换整个文件。 您不需要用新节点替换该节点。只需将目标节点传递给函数。函数应在父节点上调用appendChild以添加子节点。 将文档写入文件时,它将具有新节点。