XPathNodeIterator.Current Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při přepsání v odvozené třídě získá objekt pro tento XPathNodeIterator, XPathNavigator umístěný na aktuálním kontextovém uzlu.
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
Hodnota vlastnosti
Objekt XPathNavigator umístěný na kontextovém uzlu, ze kterého byla vybrána sada uzlů. Metoda MoveNext() se musí volat, aby se přesunula XPathNodeIterator na první uzel ve vybrané sadě.
Příklady
Následující příklad získá všechny knihy tituly vytvořené HermanEm Melville pomocí Current vlastnosti XPathNodeIterator objektu a Clone metody XPathNavigator třídy.
XPathDocument^ document = gcnew 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);
}
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
Příklad přebírá contosoBooks.xml
soubor jako vstup.
<?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>
Poznámky
Pomocí vlastností vráceného XPathNavigator objektu můžete získat informace o aktuálním uzlu. Vrácený XPathNavigator objekt by však neměl být změněn. Vrácený XPathNavigator objekt nelze přesunout z vybrané sady uzlů.
Alternativně můžete objekt naklonovat XPathNavigator pomocí Clone metody XPathNavigator třídy. Klonovaný XPathNavigator objekt se pak dá přesunout mimo vybranou sadu uzlů. Tato metoda klonování objektu XPathNavigator může ovlivnit výkon dotazu XPath.
SelectAncestorsPokud funkce , SelectDescendantsa SelectChildren metody způsobí, že nejsou vybrány žádné uzly, Current vlastnost nemusí odkazovat na kontextový uzel.
Chcete-li otestovat, zda uzly byly vybrány, použijte Count vlastnost, jak je znázorněno v následujícím příkladu.