我有一个非常复杂的 xml
我需要来自的单个值
selectSingleNode(@"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays").InnerText)
但是这个位置大约有 7 个条目,所以它只返回第一个我需要的最后一个。
您可以使用索引和内部索引,您可以放置 last() 函数 - 如下所示:
"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays[last()]"
请参阅MSDN 中的最后一个XPath 函数。
改用SelectNodes
:
Dim nodeList As XmlNodeList = root.SelectNodes(@"/TimeInTransitResponse/TransitResponse/ServiceSummary/EstimatedArrival/BusinessTransitDays")
Dim lastNode As XmlNode = nodeList.Item(nodeList.Count - 1)
Dim lastNodeValue As Decimal = Convert.ToDecimal(lastNode.InnerText)
然后取列表中的最后一个节点。