Partilhar via


XPathNavigator.AppendChild Método

Definição

Cria um novo nó filho ao final da lista de nós filho do nó atual.

Sobrecargas

AppendChild()

Retorna um objeto XmlWriter usado para criar um ou mais novos nós filhos no final da lista de nós filhos do nó atual.

AppendChild(String)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando a cadeia de caracteres de dados XML especificada.

AppendChild(XmlReader)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando o conteúdo XML do objeto XmlReader especificado.

AppendChild(XPathNavigator)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando os nós no XPathNavigator especificado.

AppendChild()

Retorna um objeto XmlWriter usado para criar um ou mais novos nós filhos no final da lista de nós filhos do nó atual.

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

Retornos

XmlWriter

Um objeto XmlWriter usado para criar novos nós filhos no final da lista de nós filhos do nó atual.

Exceções

O nó atual no qual XPathNavigator está posicionado não é o nó raiz nem um nó de elemento.

O XPathNavigator não dá suporte à edição.

Exemplos

No exemplo a seguir, um novo pages elemento filho é acrescentado à lista de elementos filho do primeiro book elemento no contosoBooks.xml arquivo usando o XmlWriter objeto retornado do AppendChild método.

    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");

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

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");

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

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")

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

Console.WriteLine(navigator.OuterXml)

O exemplo usa o arquivo contosoBooks.xml como entrada.

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

Acrescentar nós filho adiciona os novos nós ao final da lista de nós filho para o nó atual. Por exemplo, quando existem três nós filho para um elemento, o primeiro nó acrescentado se torna o quarto nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

Veja a seguir notas importantes a serem consideradas ao usar o AppendChild método.

Você pode escrever mais de um nó para o gravador. Todos os nós são acrescentados ao final da lista de nós filho do nó atual.

Aplica-se a

AppendChild(String)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando a cadeia de caracteres de dados XML especificada.

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

Parâmetros

newChild
String

A cadeia de dados XML do novo nó filho.

Exceções

O parâmetro de cadeia de caracteres de dados XML é null.

O nó atual no qual XPathNavigator está posicionado não é o nó raiz nem um nó de elemento.

O XPathNavigator não dá suporte à edição.

O parâmetro de cadeia de caracteres de dados XML não está bem formado.

Exemplos

No exemplo a seguir, um novo elemento filho de pages é acrescentado à lista de elementos filho do primeiro elemento de book no arquivo de contosoBooks.xml .

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->AppendChild("<pages>100</pages>");

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.AppendChild("<pages>100</pages>");

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.AppendChild("<pages>100</pages>")

Console.WriteLine(navigator.OuterXml)

O exemplo usa o arquivo contosoBooks.xml como entrada.

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

Acrescentar um nó filho adiciona o novo nó ao final da lista de nós filho para o nó atual. Por exemplo, quando existem três nós filho para um elemento, o nó acrescentado se torna o quarto nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

Para criar um novo nó de elemento, inclua toda a sintaxe XML no parâmetro de cadeia de caracteres XML. A cadeia de caracteres para um novo book nó é AppendChild("<book/>"). A cadeia de caracteres para acrescentar o texto "book" ao nó de texto do nó atual é AppendChild("book"). Se a cadeia de caracteres XML contiver vários nós, todos os nós serão adicionados.

Veja a seguir notas importantes a serem consideradas ao usar o AppendChild método.

Aplica-se a

AppendChild(XmlReader)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando o conteúdo XML do objeto XmlReader especificado.

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

Parâmetros

newChild
XmlReader

Um objeto XmlReader posicionado nos dados XML para o novo nó filho.

Exceções

O objeto XmlReader está em um estado de erro ou fechado.

O parâmetro do objeto XmlReader é null.

O nó atual no qual XPathNavigator está posicionado não é o nó raiz nem um nó de elemento.

O XPathNavigator não dá suporte à edição.

O conteúdo XML do parâmetro de objeto XmlReader não está bem formado.

Exemplos

No exemplo a seguir, um novo pages elemento filho é acrescentado à lista de elementos filho do primeiro book elemento no contosoBooks.xml arquivo usando o XmlReader objeto especificado. O http://www.contoso.com/books namespace é especificado para que o novo elemento filho seja acrescentado usando o mesmo namespace que o documento XML.

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");

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

navigator->AppendChild(pages);

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");

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

navigator.AppendChild(pages);

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")

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

navigator.AppendChild(pages)

Console.WriteLine(navigator.OuterXml)

O exemplo usa o arquivo contosoBooks.xml como entrada.

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

Acrescentar um nó filho adiciona o novo nó ao final da lista de nós filho para o nó atual. Por exemplo, quando existem três nós filho para um elemento, o nó acrescentado se torna o quarto nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

Veja a seguir notas importantes a serem consideradas ao usar o AppendChild método.

  • Se o XmlReader objeto estiver posicionado sobre uma sequência de nós XML, todos os nós na sequência serão adicionados.

  • O AppendChild método é válido somente quando ele XPathNavigator está posicionado no nó raiz ou em um nó de elemento.

  • O AppendChild método não afeta a posição do XPathNavigator.

Aplica-se a

AppendChild(XPathNavigator)

Cria um novo nó filho ao final da lista de nós filho do nó atual usando os nós no XPathNavigator especificado.

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

Parâmetros

newChild
XPathNavigator

Um objeto XPathNavigator posicionado no nó a ser adicionado como o novo nó filho.

Exceções

O parâmetro do objeto XPathNavigator é null.

O nó atual no qual XPathNavigator está posicionado não é o nó raiz nem um nó de elemento.

O XPathNavigator não dá suporte à edição.

Exemplos

No exemplo a seguir, um novo pages elemento filho é acrescentado à lista de elementos filho do primeiro book elemento no contosoBooks.xml arquivo usando o nó contido no XPathNavigator especificado. O http://www.contoso.com/books namespace é especificado para que o novo elemento filho seja acrescentado usando o mesmo namespace que o documento XML.

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");

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


if (childNodesNavigator->MoveToChild("pages", "http://www.contoso.com/books"))
{
    navigator->AppendChild(childNodesNavigator);
}

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");

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

if(childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books"))
{
    navigator.AppendChild(childNodesNavigator);
}

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")

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()

If childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books") Then
    navigator.AppendChild(childNodesNavigator)
End If

Console.WriteLine(navigator.OuterXml)

O exemplo usa o arquivo contosoBooks.xml como entrada.

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

Acrescentar um nó filho adiciona o novo nó ao final da lista de nós filho para o nó atual. Por exemplo, quando existem três nós filho para um elemento, o nó acrescentado se torna o quarto nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

Veja a seguir notas importantes a serem consideradas ao usar o AppendChild método.

Aplica-se a