从XmlDocument获取InnerText会抛出NullReferenceException

时间:2011-10-28 09:57:44

标签: xml vb.net

每当我尝试使用XmlDocument获取元素的InnerText时,它都会抛出NullReferenceException。以下是代码:

    Dim SetDoc As New XmlDocument
    Dim xmlString As String = "<upload><links><bananas>apple</bananas><original>thirteen</original></links></upload>"
    SetDoc.LoadXml(xmlString)
    MsgBox(SetDoc.GetElementById("original").InnerText)

当我从文件中加载完全相同的XML时,会发生同样的情况。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

GetElementById需要ID属性,还需要定义ID属性名称的模式。

使用 GetElementsByTagName 代替

Msgbox(SetDoc.GetElementsByTagName("original")(0).Innertext)

(我必须把(0),因为GetElementsByTagName返回一个列表而不是一个项目)

或者您可以使用属性

Msgbox(SetDoc.Item("upload").Item("links").Item("original").InnerText)