Sdílet prostřednictvím


XPathNavigator.InsertAfter Metoda

Definice

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu.

Přetížení

InsertAfter(XPathNavigator)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí uzlů v zadaném objektu XPathNavigator .

InsertAfter(XmlReader)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí obsahu XML zadaného objektu XmlReader .

InsertAfter()

XmlWriter Vrátí objekt použitý k vytvoření nového uzlu na stejné úrovni po aktuálně vybraném uzlu.

InsertAfter(String)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí zadaného řetězce XML.

InsertAfter(XPathNavigator)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí uzlů v zadaném objektu XPathNavigator .

public:
 virtual void InsertAfter(System::Xml::XPath::XPathNavigator ^ newSibling);
public virtual void InsertAfter (System.Xml.XPath.XPathNavigator newSibling);
abstract member InsertAfter : System.Xml.XPath.XPathNavigator -> unit
override this.InsertAfter : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub InsertAfter (newSibling As XPathNavigator)

Parametry

newSibling
XPathNavigator

Objekt XPathNavigator umístěný na uzlu, který se má přidat jako nový uzel na stejné úrovni.

Výjimky

Parametr objektu XPathNavigator je null.

Pozice XPathNavigator uzlu neumožňuje vložení nového uzlu na stejné úrovni za aktuální uzel.

Nepodporuje XPathNavigator úpravy.

Příklady

V následujícím příkladu se nový pages prvek vloží za price podřízený prvek prvního book prvku v contosoBooks.xml souboru pomocí uzlu obsaženého v objektu zadaném XPathNavigator . Obor http://www.contoso.com/books názvů je zadán tak, aby se nový prvek sesílání se stejným oborem názvů jako dokument XML vložil.

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

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

XmlDocument^ childNodes = gcnew XmlDocument();
childNodes->Load(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator^ childNodesNavigator = childNodes->CreateNavigator();

navigator->InsertAfter(childNodesNavigator);

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

XmlDocument childNodes = new XmlDocument();
childNodes.Load(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator childNodesNavigator = childNodes.CreateNavigator();

navigator.InsertAfter(childNodesNavigator);

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

Dim childNodes As XmlDocument = New XmlDocument()
childNodes.Load(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
Dim childNodesNavigator As XPathNavigator = childNodes.CreateNavigator()

navigator.InsertAfter(childNodesNavigator)

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Příklad vezme 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

Při používání InsertAfter metody je potřeba vzít v úvahu následující důležité poznámky.

  • XmlReader Pokud se objekt umístí na posloupnost uzlů XML, přidají se všechny uzly v sekvenci.

  • Metoda InsertAfter je platná pouze v případě, že XPathNavigator je umístěn na elementu, textu, zpracování instrukce nebo uzlu komentáře.

  • Metoda InsertAfter nemá vliv na pozici XPathNavigator.

Platí pro

InsertAfter(XmlReader)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí obsahu XML zadaného objektu XmlReader .

public:
 virtual void InsertAfter(System::Xml::XmlReader ^ newSibling);
public virtual void InsertAfter (System.Xml.XmlReader newSibling);
abstract member InsertAfter : System.Xml.XmlReader -> unit
override this.InsertAfter : System.Xml.XmlReader -> unit
Public Overridable Sub InsertAfter (newSibling As XmlReader)

Parametry

newSibling
XmlReader

Objekt XmlReader umístěný na datech XML pro nový uzel seblízním uzlem.

Výjimky

Objekt XmlReader je ve stavu chyby nebo je zavřený.

Parametr objektu XmlReader je null.

Pozice XPathNavigator uzlu neumožňuje vložení nového uzlu na stejné úrovni za aktuální uzel.

Nepodporuje XPathNavigator úpravy.

Obsah XML parametru objektu XmlReader není správně vytvořen.

Příklady

V následujícím příkladu se nový pages prvek vloží za price podřízený prvek prvního book prvku v contosoBooks.xml souboru pomocí zadaného objektu XmlReader . Obor http://www.contoso.com/books názvů je zadán tak, aby se nový prvek sesílání se stejným oborem názvů jako dokument XML vložil.

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

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

XmlReader^ pages = XmlReader::Create(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));

navigator->InsertAfter(pages);

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

XmlReader pages = XmlReader.Create(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));

navigator.InsertAfter(pages);

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

Dim pages As XmlReader = XmlReader.Create(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))

navigator.InsertAfter(pages)

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Příklad vezme 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

Při používání InsertAfter metody je potřeba vzít v úvahu následující důležité poznámky.

  • XmlReader Pokud se objekt umístí na posloupnost uzlů XML, přidají se všechny uzly v sekvenci.

  • Metoda InsertAfter je platná pouze v případě, že XPathNavigator je umístěn na elementu, textu, zpracování instrukce nebo uzlu komentáře.

  • Metoda InsertAfter nemá vliv na pozici XPathNavigator.

Platí pro

InsertAfter()

XmlWriter Vrátí objekt použitý k vytvoření nového uzlu na stejné úrovni po aktuálně vybraném uzlu.

public:
 virtual System::Xml::XmlWriter ^ InsertAfter();
public virtual System.Xml.XmlWriter InsertAfter ();
abstract member InsertAfter : unit -> System.Xml.XmlWriter
override this.InsertAfter : unit -> System.Xml.XmlWriter
Public Overridable Function InsertAfter () As XmlWriter

Návraty

XmlWriter

Objekt XmlWriter použitý k vytvoření nového uzlu na stejné úrovni po aktuálně vybraném uzlu.

Výjimky

Pozice XPathNavigator uzlu neumožňuje vložení nového uzlu na stejné úrovni za aktuální uzel.

Nepodporuje XPathNavigator úpravy.

Příklady

V následujícím příkladu se nový pages prvek vloží za price podřízený prvek prvního book prvku v contosoBooks.xml souboru pomocí objektu XmlWriter vráceného metodou InsertAfter .

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

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

XmlWriter^ pages = navigator->InsertAfter();
pages->WriteElementString("pages", "100");
pages->Close();

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

XmlWriter pages = navigator.InsertAfter();
pages.WriteElementString("pages", "100");
pages.Close();

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

Dim pages As XmlWriter = navigator.InsertAfter()
pages.WriteElementString("pages", "100")
pages.Close()

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Příklad vezme 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

Při používání InsertAfter metody je potřeba vzít v úvahu následující důležité poznámky.

Platí pro

InsertAfter(String)

Vytvoří nový uzel se seznamem po aktuálně vybraném uzlu pomocí zadaného řetězce XML.

public:
 virtual void InsertAfter(System::String ^ newSibling);
public virtual void InsertAfter (string newSibling);
abstract member InsertAfter : string -> unit
override this.InsertAfter : string -> unit
Public Overridable Sub InsertAfter (newSibling As String)

Parametry

newSibling
String

Datový řetězec XML pro nový uzel seblízem.

Výjimky

Parametr řetězce XML je null.

Pozice XPathNavigator uzlu neumožňuje vložení nového uzlu na stejné úrovni za aktuální uzel.

Nepodporuje XPathNavigator úpravy.

Parametr řetězce XML není správně vytvořen.

Příklady

V následujícím příkladu se nový pages prvek vloží za price podřízený prvek prvního book prvku v contosoBooks.xml souboru.

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

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

navigator->InsertAfter("<pages>100</pages>");

navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");

navigator.InsertAfter("<pages>100</pages>");

navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")

navigator.InsertAfter("<pages>100</pages>")

navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)

Příklad vezme 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

Pokud chcete vytvořit nový uzel elementu, zahrňte do parametru řetězce XML veškerou syntaxi XML. Řetězec nového book uzlu je InsertAfter("<book/>"). Řetězec pro vložení textu "book" za textový uzel aktuálního uzlu je InsertAfter("book"). Pokud řetězec XML obsahuje více uzlů, přidají se všechny uzly.

Při používání InsertAfter metody je potřeba vzít v úvahu následující důležité poznámky.

Platí pro