XPathResultType.NodeSet
Imports System
Imports System.Xml
Imports System.Xml.XPath
Public Class MainClass
Public Shared Sub Main()
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()
Dim expression1 As XPathExpression = XPathExpression.Compile(".//bk:price/text()*10") ' Returns a number.
Dim expression2 As XPathExpression = XPathExpression.Compile("bk:bookstore/bk:book/bk:price") ' Returns a nodeset.
Dim manager As XmlNamespaceManager = New XmlNamespaceManager(navigator.NameTable)
manager.AddNamespace("bk", "http://www.yourname.com/books")
expression1.SetContext(manager)
expression2.SetContext(manager)
Evaluate(expression1, navigator)
Evaluate(expression2, navigator)
End Sub
Public Shared Sub Evaluate(ByVal expression As XPathExpression, ByVal navigator As XPathNavigator)
Select Case expression.ReturnType
Case XPathResultType.NodeSet
Dim nodes As XPathNodeIterator = navigator.Select(expression)
While nodes.MoveNext()
Console.WriteLine(nodes.Current.ToString())
End While
End Select
End Sub
End Class
'<bookstore xmlns="http://www.yourname.com/books">
' <book genre="autobiography" publicationdate="1999-12-12" ISBN="1-111111-11-1">
' <title>A</title>
' <author>
' <first-name>X</first-name>
' <last-name>Y</last-name>
' </author>
' <price>8.99</price>
' </book>
' <book genre="novel" publicationdate="2000-01-01" ISBN="0-201-63361-2">
' <title>Java</title>
' <author>
' <first-name>Q</first-name>
' <last-name>Q</last-name>
' </author>
' <price>11.99</price>
' </book>
' <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
' <title>C#</title>
' <author>
' <name>Author</name>
' </author>
' <price>9.99</price>
' </book>
'</bookstore>
Related examples in the same category