访问Vb.Net中多个节点内的多个节点

时间:2014-06-29 13:34:02

标签: xml vb.net search nodes

对于下面的XML,我需要获取separately for each(有2个节点)并将其添加到字典中。我正在尝试使用下面的代码。但是当我试图访问节点时,我得到的计数为4(它需要两个)。我需要根据风险提取居住者。有希望吗?

当循环第一个节点而不是2时,计数为4,因为第一个风险包含2

1 个答案:

答案 0 :(得分:1)

如果您希望XPath相对于当前节点(仅在当前节点上下文中执行Xpath查询),则需要在XPath的开头添加句点/点(.),例如:< / p>

xPath = "/SearchResult/Risks/Risk"
......
......
'get Location from current <Risk>'
xmlNode = xmlNodeRisk.SelectSingleNode("./Location")
'get Occupant from current <Risk>'
xmlNodeChild1 = xmlNodeRisk.SelectNodes("./Occupants/Occupant")
'get Address from current <Location>'
XmlNodeAddress = xmlNode.SelectSingleNode("./Address")
......
......