Csharp/C Sharp by API/System.Xml.XPath/XPathDocument

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

new XPathDocument

<source lang="csharp">

using System; using System.Collections.Generic; using System.Data; using System.Text; using System.Xml; using System.Xml.XPath; public class MainClass {

   public static void Main() {
       XPathDocument doc = new XPathDocument("books.xml");
       XPathNavigator nav = ((IXPathNavigable)doc).CreateNavigator();
       XPathNodeIterator iter = nav.Select("/bookstore/book[@genre="novel"]");
       while (iter.MoveNext()) {
           XPathNodeIterator newIter = iter.Current.SelectDescendants(XPathNodeType.Element, false);
           while (newIter.MoveNext())
               Console.WriteLine(newIter.Current.Name + ": " + newIter.Current.Value);
       }
   }

}


 </source>


XPathDocument.CreateNavigator()

<source lang="csharp"> using System; using System.Data; using System.Xml; using System.Xml.XPath; public class MainClass {

 public static void Main() {
     XPathDocument doc = new XPathDocument( "sample.xml" );
     XPathNavigator nav = doc.CreateNavigator();
     XPathExpression xpe = nav.rupile( "//name" );
     XPathNodeIterator ni = nav.Select( xpe );
 
     while ( ni.MoveNext() ) {
         Console.WriteLine(ni.Current.Value);
     }
 }

}


 </source>