XPathNavigator.InsertAfter Método

Definição

Cria um novo nó irmão após o nó atualmente selecionado.Creates a new sibling node after the currently selected node.

Sobrecargas

InsertAfter(XPathNavigator)

Cria um novo nó irmão após o nó atualmente selecionado usando os nós do objeto XPathNavigator especificado.Creates a new sibling node after the currently selected node using the nodes in the XPathNavigator object specified.

InsertAfter(XmlReader)

Cria um novo nó irmão após o nó atualmente selecionado, usando o conteúdo XML do objeto XmlReader especificado.Creates a new sibling node after the currently selected node using the XML contents of the XmlReader object specified.

InsertAfter()

Retorna um objeto XmlWriter usado para criar um novo nó irmão após o nó atualmente selecionado.Returns an XmlWriter object used to create a new sibling node after the currently selected node.

InsertAfter(String)

Cria um novo nó irmão após o nó atualmente selecionado, usando a cadeia de caracteres XML especificada.Creates a new sibling node after the currently selected node using the XML string specified.

InsertAfter(XPathNavigator)

Cria um novo nó irmão após o nó atualmente selecionado usando os nós do objeto XPathNavigator especificado.Creates a new sibling node after the currently selected node using the nodes in the XPathNavigator object specified.

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)

Parâmetros

newSibling
XPathNavigator

Um objeto XPathNavigator posicionado no nó a ser adicionado como o novo nó irmão.An XPathNavigator object positioned on the node to add as the new sibling node.

Exceções

O parâmetro do objeto XPathNavigator é null.The XPathNavigator object parameter is null.

A posição do XPathNavigator não permite que um novo nó irmão seja inserido após o nó atual.The position of the XPathNavigator does not allow a new sibling node to be inserted after the current node.

O XPathNavigator não dá suporte à edição.The XPathNavigator does not support editing.

Exemplos

No exemplo a seguir, um novo pages elemento é inserido após o price elemento filho do primeiro book elemento no contosoBooks.xml arquivo usando o nó contido no XPathNavigator objeto especificado.In the following example a new pages element is inserted after the price child element of the first book element in the contosoBooks.xml file using the node contained in the XPathNavigator object specified. O http://www.contoso.com/books namespace é especificado para que o novo elemento irmão seja inserido usando o mesmo namespace que o documento XML.The http://www.contoso.com/books namespace is specified so that the new sibling element is inserted using the same namespace as the XML document.

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)

O exemplo usa o arquivo contosoBooks.xml como entrada.The example takes the contosoBooks.xml file as an input.

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

Comentários

Veja a seguir as observações importantes a serem consideradas ao usar o InsertAfter método.The following are important notes to consider when using the InsertAfter method.

  • Se o XmlReader objeto estiver posicionado sobre uma sequência de nós XML, todos os nós na sequência serão adicionados.If the XmlReader object is positioned over a sequence of XML nodes, all the nodes in the sequence are added.

  • O InsertAfter método é válido somente quando o XPathNavigator está posicionado em um elemento, texto, instrução de processamento ou nó de comentário.The InsertAfter method is valid only when the XPathNavigator is positioned on an element, text, processing instruction, or comment node.

  • O InsertAfter método não afeta a posição do XPathNavigator .The InsertAfter method does not affect the position of the XPathNavigator.

Aplica-se a

InsertAfter(XmlReader)

Cria um novo nó irmão após o nó atualmente selecionado, usando o conteúdo XML do objeto XmlReader especificado.Creates a new sibling node after the currently selected node using the XML contents of the XmlReader object specified.

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)

Parâmetros

newSibling
XmlReader

Um objeto XmlReader posicionado nos dados XML para o novo nó irmão.An XmlReader object positioned on the XML data for the new sibling node.

Exceções

O objeto XmlReader está em um estado de erro ou fechado.The XmlReader object is in an error state or closed.

O parâmetro do objeto XmlReader é null.The XmlReader object parameter is null.

A posição do XPathNavigator não permite que um novo nó irmão seja inserido após o nó atual.The position of the XPathNavigator does not allow a new sibling node to be inserted after the current node.

O XPathNavigator não dá suporte à edição.The XPathNavigator does not support editing.

O conteúdo XML do parâmetro de objeto XmlReader não está bem formado.The XML contents of the XmlReader object parameter is not well-formed.

Exemplos

No exemplo a seguir, um novo pages elemento é inserido após o price elemento filho do primeiro book elemento no contosoBooks.xml arquivo usando o XmlReader objeto especificado.In the following example a new pages element is inserted after the price child element of the first book element in the contosoBooks.xml file using the XmlReader object specified. O http://www.contoso.com/books namespace é especificado para que o novo elemento irmão seja inserido usando o mesmo namespace que o documento XML.The http://www.contoso.com/books namespace is specified so that the new sibling element is inserted using the same namespace as the XML document.

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)

O exemplo usa o arquivo contosoBooks.xml como entrada.The example takes the contosoBooks.xml file as an input.

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

Comentários

Veja a seguir as observações importantes a serem consideradas ao usar o InsertAfter método.The following are important notes to consider when using the InsertAfter method.

  • Se o XmlReader objeto estiver posicionado sobre uma sequência de nós XML, todos os nós na sequência serão adicionados.If the XmlReader object is positioned over a sequence of XML nodes, all the nodes in the sequence are added.

  • O InsertAfter método é válido somente quando o XPathNavigator está posicionado em um elemento, texto, instrução de processamento ou nó de comentário.The InsertAfter method is valid only when the XPathNavigator is positioned on an element, text, processing instruction, or comment node.

  • O InsertAfter método não afeta a posição do XPathNavigator .The InsertAfter method does not affect the position of the XPathNavigator.

Aplica-se a

InsertAfter()

Retorna um objeto XmlWriter usado para criar um novo nó irmão após o nó atualmente selecionado.Returns an XmlWriter object used to create a new sibling node after the currently selected node.

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

Retornos

XmlWriter

Um objeto XmlWriter usado para criar um novo nó irmão após o nó atualmente selecionado.An XmlWriter object used to create a new sibling node after the currently selected node.

Exceções

A posição do XPathNavigator não permite que um novo nó irmão seja inserido após o nó atual.The position of the XPathNavigator does not allow a new sibling node to be inserted after the current node.

O XPathNavigator não dá suporte à edição.The XPathNavigator does not support editing.

Exemplos

No exemplo a seguir, um novo pages elemento é inserido após o price elemento filho do primeiro book elemento no contosoBooks.xml arquivo usando o XmlWriter objeto retornado pelo InsertAfter método.In the following example a new pages element is inserted after the price child element of the first book element in the contosoBooks.xml file using the XmlWriter object returned by the InsertAfter method.

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)

O exemplo usa o arquivo contosoBooks.xml como entrada.The example takes the contosoBooks.xml file as an input.

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

Comentários

Veja a seguir as observações importantes a serem consideradas ao usar o InsertAfter método.The following are important notes to consider when using the InsertAfter method.

Aplica-se a

InsertAfter(String)

Cria um novo nó irmão após o nó atualmente selecionado, usando a cadeia de caracteres XML especificada.Creates a new sibling node after the currently selected node using the XML string specified.

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)

Parâmetros

newSibling
String

A cadeia de dados XML para o novo nó irmão.The XML data string for the new sibling node.

Exceções

O parâmetro da cadeia de caracteres XML é null.The XML string parameter is null.

A posição do XPathNavigator não permite que um novo nó irmão seja inserido após o nó atual.The position of the XPathNavigator does not allow a new sibling node to be inserted after the current node.

O XPathNavigator não dá suporte à edição.The XPathNavigator does not support editing.

O parâmetro da cadeia de caracteres XML não está bem formado.The XML string parameter is not well-formed.

Exemplos

No exemplo a seguir, um novo pages elemento é inserido após o price elemento filho do primeiro book elemento no contosoBooks.xml arquivo.In the following example a new pages element is inserted after the price child element of the first book element in the contosoBooks.xml file.

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)

O exemplo usa o arquivo contosoBooks.xml como entrada.The example takes the contosoBooks.xml file as an input.

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

Comentários

Para criar um novo nó de elemento, inclua toda a sintaxe XML no parâmetro de cadeia de caracteres XML.To create a new element node, include all XML syntax in the XML string parameter. A cadeia de caracteres para um novo book nó é InsertAfter("<book/>") .The string for a new book node is InsertAfter("<book/>"). A cadeia de caracteres para inserir o texto "Book" após o nó de texto do nó atual é InsertAfter("book") .The string for inserting the text "book" after the current node's text node is InsertAfter("book"). Se a cadeia de caracteres XML contiver vários nós, todos os nós serão adicionados.If the XML string contains multiple nodes, all nodes are added.

Veja a seguir as observações importantes a serem consideradas ao usar o InsertAfter método.The following are important notes to consider when using the InsertAfter method.

Aplica-se a