Aracılığıyla paylaş


XPathNavigator Kullanarak XML Verileri Seçme

sınıfı, XPathNavigator XPath ifadesi kullanarak bir veya XmlDocument nesnesindeki XPathDocument düğüm kümesini seçmek için kullanılan bir yöntem kümesi sağlar. Seçildikten sonra, seçilen düğüm kümesini yineleyebilirsiniz.

XPathNavigator Seçim Yöntemleri

sınıfı, XPathNavigator XPath ifadesi kullanarak bir veya XmlDocument nesnesindeki XPathDocument düğüm kümesini seçmek için kullanılan bir yöntem kümesi sağlar. XPathNavigator sınıfı ayrıca bir XPath ifadesi kullanmaktan daha hızlı bir üst, alt ve alt düğüm seçmek için iyileştirilmiş yöntemler kümesi sağlar. Seçilen düğüm kümesi, tek bir XPathNodeIterator seçili düğüm durumunda bir nesnede veya XPathNavigator nesnede döndürülür.

XPath İfadelerini Kullanarak Düğüm Seçme

XPath ifadesi kullanarak bir düğüm kümesi seçmek için aşağıdaki seçim yöntemlerinden birini kullanın.

Çağrıldığında, bu yöntemler tek bir seçili düğüm söz konusu olduğunda bir XPathNodeIterator nesne veya XPathNavigator nesne kullanarak serbestçe gezinebileceğiniz bir düğüm kümesi döndürür.

Bir XPathNodeIterator nesneyle gezinmek, nesneyi oluşturmak için kullanılan nesnenin XPathNavigator konumunu etkilemez. XPathNavigator Yöntemlerden SelectSingleNode döndürülen nesne, döndürülen tek düğümde konumlandırılır ve bunu oluşturmak için kullanılan nesnenin XPathNavigator konumunu etkilemez.

Aşağıdaki örnekte bir nesneden nesne XPathNavigator oluşturulması, nesnedeki XPathDocument düğümleri seçmek için yönteminin Select kullanılması ve seçilen düğümler üzerinde yinelemek için nesnenin XPathNodeIterator kullanılması gösterilmektedirXPathDocument.

Dim document As XPathDocument = New XPathDocument("books.xml")  
Dim navigator As XPathNavigator = document.CreateNavigator()  
Dim nodes As XPathNodeIterator = navigator.Select("/bookstore/book")  
  
While nodes.MoveNext()  
    Console.WriteLine(nodes.Current.Name)  
End While  
XPathDocument document = new XPathDocument("books.xml");  
XPathNavigator navigator = document.CreateNavigator();  
XPathNodeIterator nodes = navigator.Select("/bookstore/book");  
  
while(nodes.MoveNext())  
{  
    Console.WriteLine(nodes.Current.Name);  
}  

Örnek, dosyayı giriş olarak alır books.xml .

<?xml version="1.0" encoding="utf-8" ?> 
<bookstore>
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>

İyileştirilmiş Seçim Yöntemleri

SelectChildrensınıfının , SelectAncestorsve yöntemleri XPathNavigator alt, alt ve SelectDescendants üst düğümleri almak için yaygın olarak kullanılan XPath ifadelerini temsil eder. Bu yöntemler performans için iyileştirilmiştir ve karşılık gelen XPath ifadelerinden daha hızlıdır. SelectChildren, SelectAncestorsve SelectDescendants yöntemleri bir değere veya seçecek düğümlerin yerel adı ve ad alanı URI'sine göre XPathNodeType üst, alt ve alt düğümleri seçer. Seçili üst, alt ve alt düğümler bir XPathNodeIterator nesnede döndürülür.

Ayrıca bkz.