Udostępnij za pośrednictwem


XPathNavigator.MoveToFollowing Metoda

Definicja

Przenosi element XPathNavigator do określonego elementu w kolejności dokumentu.

Przeciążenia

MoveToFollowing(XPathNodeType, XPathNavigator)

Przenosi element XPathNavigator do następującego XPathNodeType elementu określonego, do określonej granicy w kolejności dokumentu.

MoveToFollowing(String, String, XPathNavigator)

Przenosi element XPathNavigator do elementu z określoną lokalną nazwą i identyfikatorem URI przestrzeni nazw do określonej granicy w kolejności dokumentu.

MoveToFollowing(XPathNodeType)

Przenosi element XPathNavigator do następującego elementu określonego XPathNodeType w kolejności dokumentu.

MoveToFollowing(String, String)

Przenosi element XPathNavigator do elementu z lokalną nazwą i identyfikatorem URI przestrzeni nazw określonym w kolejności dokumentu.

MoveToFollowing(XPathNodeType, XPathNavigator)

Przenosi element XPathNavigator do następującego XPathNodeType elementu określonego, do określonej granicy w kolejności dokumentu.

public:
 virtual bool MoveToFollowing(System::Xml::XPath::XPathNodeType type, System::Xml::XPath::XPathNavigator ^ end);
public virtual bool MoveToFollowing (System.Xml.XPath.XPathNodeType type, System.Xml.XPath.XPathNavigator? end);
public virtual bool MoveToFollowing (System.Xml.XPath.XPathNodeType type, System.Xml.XPath.XPathNavigator end);
abstract member MoveToFollowing : System.Xml.XPath.XPathNodeType * System.Xml.XPath.XPathNavigator -> bool
override this.MoveToFollowing : System.Xml.XPath.XPathNodeType * System.Xml.XPath.XPathNavigator -> bool
Public Overridable Function MoveToFollowing (type As XPathNodeType, end As XPathNavigator) As Boolean

Parametry

type
XPathNodeType

Element XPathNodeType . Nie XPathNodeType może być Attribute lub Namespace.

end
XPathNavigator

XPathNavigator Obiekt umieszczony na granicy elementu, który bieżący XPathNavigator nie będzie przechodził obok podczas wyszukiwania następującego elementu.

Zwraca

Boolean

true jeśli przeniesiono XPathNavigator pomyślnie; w przeciwnym razie false.

Przykłady

W poniższym przykładzie element XPathNavigator jest przenoszony z katalogu głównego contosoBooks.xml pliku do następującego price elementu. Klon XPathNavigator obiektu jest wykonany przy użyciu Clone metody . Sklonowany XPathNavigatorelement , umieszczony na price elemecie, będzie używany jako granica. Zmiany w pozycji sklonowanej XPathNavigator nie wpływają na oryginalny XPathNavigatorelement . Oryginał XPathNavigator jest przenoszony z powrotem do katalogu głównego contosoBooks.xml pliku przy użyciu MoveToRoot metody . Tytuł i nazwisko autora są pobierane przy użyciu MoveToFollowing metody i klasy XPathNodeType Text. Metoda MoveToFollowing zwróci wartość true do momentu price osiągnięcia granicy elementu.

    XPathDocument^ document = gcnew XPathDocument("contosoBooks.xml");
    XPathNavigator^ navigator = document->CreateNavigator();

    navigator->MoveToFollowing("price", "http://www.contoso.com/books");
    XPathNavigator^ boundary = navigator->Clone();

    navigator->MoveToRoot();

while (navigator->MoveToFollowing(XPathNodeType::Text, boundary))
    {
        Console::WriteLine(navigator->OuterXml);
    }
XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToFollowing("price", "http://www.contoso.com/books");
XPathNavigator boundary = navigator.Clone();

navigator.MoveToRoot();

while (navigator.MoveToFollowing(XPathNodeType.Text, boundary))
{
    Console.WriteLine(navigator.OuterXml);
}
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToFollowing("price", "http://www.contoso.com/books")
Dim boundary As XPathNavigator = navigator.Clone()

navigator.MoveToRoot()

While navigator.MoveToFollowing(XPathNodeType.Text, boundary)
    Console.WriteLine(navigator.OuterXml)
End While

W przykładzie contosoBooks.xml plik jest pobierany jako dane wejściowe.

<?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>  

Uwagi

  • Metoda MoveToFollowing nie przenosi się do węzłów atrybutu ani przestrzeni nazw. Jeśli wartość parametru XPathNodeType to Attribute lub Namespace, MoveToFollowing metoda zwraca false wartość , a pozycja elementu XPathNavigator jest niezmieniona.

  • Jeśli granica XPathNavigator przekazywana jako parametr nie jest umieszczona po położeniu bieżącego, XPathNavigator zostanie zignorowana.

  • Jeśli XPathNavigator granica przekazana jako parametr jest null następnym węzłem z określonym XPathNodeType węzłem znajduje się w kolejności dokumentu.

  • Metody MoveToFollowing nie mogą być używane do przenoszenia do węzłów atrybutu ani przestrzeni nazw. Jeśli granica XPathNavigator przekazywana jako parametr jest umieszczony nad atrybutem lub węzłem przestrzeni nazw, jest ona równoważna XPathNavigator parametrowi granicy, który został umieszczony w pierwszym węźle podrzędnym elementu nadrzędnego. Dzięki temu element nadrzędny atrybutu lub węzła przestrzeni nazw, na który XPathNavigator znajduje się parametr granic, można dopasować przy użyciu tej metody.

  • MoveToFollowing Jeśli metoda zwróci falsewartość , pozycja elementu XPathNavigator jest niezmieniona.

Dotyczy

MoveToFollowing(String, String, XPathNavigator)

Przenosi element XPathNavigator do elementu z określoną lokalną nazwą i identyfikatorem URI przestrzeni nazw do określonej granicy w kolejności dokumentu.

public:
 virtual bool MoveToFollowing(System::String ^ localName, System::String ^ namespaceURI, System::Xml::XPath::XPathNavigator ^ end);
public virtual bool MoveToFollowing (string localName, string namespaceURI, System.Xml.XPath.XPathNavigator? end);
public virtual bool MoveToFollowing (string localName, string namespaceURI, System.Xml.XPath.XPathNavigator end);
abstract member MoveToFollowing : string * string * System.Xml.XPath.XPathNavigator -> bool
override this.MoveToFollowing : string * string * System.Xml.XPath.XPathNavigator -> bool
Public Overridable Function MoveToFollowing (localName As String, namespaceURI As String, end As XPathNavigator) As Boolean

Parametry

localName
String

Lokalna nazwa elementu.

namespaceURI
String

Identyfikator URI przestrzeni nazw elementu.

end
XPathNavigator

XPathNavigator Obiekt umieszczony na granicy elementu, który bieżący XPathNavigator nie będzie przechodził obok podczas wyszukiwania następującego elementu.

Zwraca

Boolean

true jeśli przeniesiono XPathNavigator pomyślnie; w przeciwnym razie false.

Przykłady

W poniższym przykładzie element XPathNavigator jest przenoszony z katalogu głównego contosoBooks.xml pliku do następującego book elementu. Klon XPathNavigator obiektu jest wykonany przy użyciu Clone metody i jest przenoszony z book elementu do następującego first-name elementu. Sklonowany XPathNavigatorelement , umieszczony na first-name elemecie, będzie używany jako granica. Zmiany w pozycji sklonowanej XPathNavigator nie wpływają na oryginalny XPathNavigatorelement . Oryginał XPathNavigator następnie próbuje przejść do następującego price elementu przy użyciu MoveToFollowing metody z granicą przekazaną jako parametr. Ten ruch kończy się niepowodzeniem, ponieważ następujący price element wykracza poza granicę. Następnie oryginał XPathNavigator próbuje przejść do następującego title elementu, który znajduje się przed granicą przy użyciu tej samej metody i powiedzie się.

XPathDocument^ document = gcnew XPathDocument("contosoBooks.xml");
XPathNavigator^ navigator = document->CreateNavigator();

navigator->MoveToFollowing("book", "http://www.contoso.com/books");
XPathNavigator^ boundary = navigator->Clone();
boundary->MoveToFollowing("first-name", "http://www.contoso.com/books");

navigator->MoveToFollowing("price", "http://www.contoso.com/books", boundary);

Console::WriteLine("Position (after boundary): {0}", navigator->Name);
Console::WriteLine(navigator->OuterXml);

navigator->MoveToFollowing("title", "http://www.contoso.com/books", boundary);

Console::WriteLine("Position (before boundary): {0}", navigator->Name);
Console::WriteLine(navigator->OuterXml);
XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToFollowing("book", "http://www.contoso.com/books");
XPathNavigator boundary = navigator.Clone();
boundary.MoveToFollowing("first-name", "http://www.contoso.com/books");

navigator.MoveToFollowing("price", "http://www.contoso.com/books", boundary);

Console.WriteLine("Position (after boundary): {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);

navigator.MoveToFollowing("title", "http://www.contoso.com/books", boundary);

Console.WriteLine("Position (before boundary): {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToFollowing("book", "http://www.contoso.com/books")
Dim boundary As XPathNavigator = navigator.Clone()
boundary.MoveToFollowing("first-name", "http://www.contoso.com/books")

navigator.MoveToFollowing("price", "http://www.contoso.com/books", boundary)

Console.WriteLine("Position (after boundary): {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

navigator.MoveToFollowing("title", "http://www.contoso.com/books", boundary)

Console.WriteLine("Position (before boundary): {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

W przykładzie contosoBooks.xml plik jest pobierany jako dane wejściowe.

<?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>  

Uwagi

  • Jeśli granica XPathNavigator przekazywana jako parametr nie jest umieszczona po położeniu bieżącego, XPathNavigator zostanie zignorowana.

  • XPathNavigator Jeśli parametr granicy to null, następujący element z określoną lokalną nazwą i identyfikatorem URI przestrzeni nazw znajduje się w kolejności dokumentu.

  • Metody MoveToFollowing nie mogą być używane do przenoszenia do węzłów atrybutu ani przestrzeni nazw. Jeśli granica XPathNavigator przekazywana jako parametr jest umieszczony nad atrybutem lub węzłem przestrzeni nazw, jest ona równoważna XPathNavigator parametrowi granicy, który został umieszczony w pierwszym węźle podrzędnym elementu nadrzędnego. Dzięki temu element nadrzędny atrybutu lub węzła przestrzeni nazw, na który XPathNavigator znajduje się parametr granic, można dopasować przy użyciu tej metody.

  • MoveToFollowing Jeśli metoda zwróci falsewartość , pozycja elementu XPathNavigator jest niezmieniona.

Dotyczy

MoveToFollowing(XPathNodeType)

Przenosi element XPathNavigator do następującego elementu określonego XPathNodeType w kolejności dokumentu.

public:
 virtual bool MoveToFollowing(System::Xml::XPath::XPathNodeType type);
public virtual bool MoveToFollowing (System.Xml.XPath.XPathNodeType type);
abstract member MoveToFollowing : System.Xml.XPath.XPathNodeType -> bool
override this.MoveToFollowing : System.Xml.XPath.XPathNodeType -> bool
Public Overridable Function MoveToFollowing (type As XPathNodeType) As Boolean

Parametry

type
XPathNodeType

Element XPathNodeType . Nie XPathNodeType może być Attribute lub Namespace.

Zwraca

Boolean

true jeśli przeniesiono XPathNavigator pomyślnie; w przeciwnym razie false.

Przykłady

W poniższym przykładzie element XPathNavigator jest przenoszony z katalogu głównego contosoBooks.xml pliku do następującego bookstore elementu.

    XPathDocument^ document = gcnew XPathDocument("contosoBooks.xml");
    XPathNavigator^ navigator = document->CreateNavigator();

navigator->MoveToFollowing(XPathNodeType::Element);

    Console::WriteLine("Position: {0}", navigator->Name);
    Console::WriteLine(navigator->OuterXml);
XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToFollowing(XPathNodeType.Element);

Console.WriteLine("Position: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToFollowing(XPathNodeType.Element)

Console.WriteLine("Position: {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

W przykładzie contosoBooks.xml plik jest pobierany jako dane wejściowe.

<?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>  

Uwagi

Dotyczy

MoveToFollowing(String, String)

Przenosi element XPathNavigator do elementu z lokalną nazwą i identyfikatorem URI przestrzeni nazw określonym w kolejności dokumentu.

public:
 virtual bool MoveToFollowing(System::String ^ localName, System::String ^ namespaceURI);
public virtual bool MoveToFollowing (string localName, string namespaceURI);
abstract member MoveToFollowing : string * string -> bool
override this.MoveToFollowing : string * string -> bool
Public Overridable Function MoveToFollowing (localName As String, namespaceURI As String) As Boolean

Parametry

localName
String

Lokalna nazwa elementu.

namespaceURI
String

Identyfikator URI przestrzeni nazw elementu.

Zwraca

Boolean

true jeśli przeniesiono XPathNavigator pomyślnie; w przeciwnym razie false.

Przykłady

W poniższym przykładzie element XPathNavigator jest przenoszony z katalogu głównego contosoBooks.xml pliku do pierwszego price elementu.

XPathDocument^ document = gcnew XPathDocument("contosoBooks.xml");
XPathNavigator^ navigator = document->CreateNavigator();

navigator->MoveToFollowing("price", "http://www.contoso.com/books");

Console::WriteLine("Position: {0}", navigator->Name);
Console::WriteLine(navigator->OuterXml);
XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToFollowing("price", "http://www.contoso.com/books");

Console.WriteLine("Position: {0}", navigator.Name);
Console.WriteLine(navigator.OuterXml);
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToFollowing("price", "http://www.contoso.com/books")

Console.WriteLine("Position: {0}", navigator.Name)
Console.WriteLine(navigator.OuterXml)

W przykładzie contosoBooks.xml plik jest pobierany jako dane wejściowe.

<?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>  

Uwagi

MoveToFollowing Jeśli metoda zwróci falsewartość , pozycja elementu XPathNavigator jest niezmieniona.

Dotyczy