XPathNodeIterator.Current Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
När det åsidosätts i en härledd klass hämtar objektet XPathNavigator för den här XPathNodeIterator, placerad på den aktuella kontextnoden.
public:
abstract property System::Xml::XPath::XPathNavigator ^ Current { System::Xml::XPath::XPathNavigator ^ get(); };
public abstract System.Xml.XPath.XPathNavigator? Current { get; }
public abstract System.Xml.XPath.XPathNavigator Current { get; }
member this.Current : System.Xml.XPath.XPathNavigator
Public MustOverride ReadOnly Property Current As XPathNavigator
Egenskapsvärde
Ett XPathNavigator objekt som placerats på kontextnoden från vilken noduppsättningen valdes. Metoden MoveNext() måste anropas för att flytta XPathNodeIterator till den första noden i den valda uppsättningen.
Exempel
I följande exempel hämtas alla boktitlar som skapats av Herman Melville med Current egenskapen XPathNodeIterator för objektet och Clone -metoden för XPathNavigator klassen.
XPathDocument document = new XPathDocument("books.xml");
XPathNavigator navigator = document.CreateNavigator();
// Select all books authored by Melville.
XPathNodeIterator nodes = navigator.Select("descendant::book[author/last-name='Melville']");
while (nodes.MoveNext())
{
// Clone the navigator returned by the Current property.
// Use the cloned navigator to get the title element.
XPathNavigator clone = nodes.Current.Clone();
clone.MoveToFirstChild();
Console.WriteLine("Book title: {0}", clone.Value);
}
Dim document As XPathDocument = New XPathDocument("books.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()
' Select all books authored by Melville.
Dim nodes As XPathNodeIterator = navigator.Select("descendant::book[author/last-name='Melville']")
While nodes.MoveNext()
' Clone the navigator returned by the Current property.
' Use the cloned navigator to get the title element.
Dim clone As XPathNavigator = nodes.Current.Clone()
clone.MoveToFirstChild()
Console.WriteLine("Book title: {0}", clone.Value)
End While
Exemplet tar contosoBooks.xml-filen som indata.
<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
<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>
Kommentarer
Du kan använda egenskaperna för det returnerade XPathNavigator objektet för att hämta information om den aktuella noden. Det returnerade XPathNavigator objektet bör dock inte ändras. Det returnerade XPathNavigator objektet kan inte flyttas bort från den valda noduppsättningen.
Du kan också klona XPathNavigator objektet med hjälp Clone av -metoden för XPathNavigator klassen. Det klonade XPathNavigator objektet kan sedan flyttas bort från den valda noduppsättningen. Den här metoden för att klona XPathNavigator objektet kan påverka XPath-frågans prestanda.
SelectAncestorsOm metoderna , SelectDescendantsoch SelectChildren resulterar i att inga noder väljs, Current kanske egenskapen inte pekar på kontextnoden.
Om du vill testa om noder har valts använder du Count egenskapen enligt följande exempel.