XPathNavigator.AppendChildElement(String, String, String, String) Método

Definição

Cria um novo nó de elemento filho no final da lista de nós filho do nó atual, usando o prefixo do namespace, o nome local e o URI do namespace especificado, com o valor especificado.

public:
 virtual void AppendChildElement(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void AppendChildElement (string prefix, string localName, string namespaceURI, string value);
public virtual void AppendChildElement (string? prefix, string localName, string? namespaceURI, string? value);
abstract member AppendChildElement : string * string * string * string -> unit
override this.AppendChildElement : string * string * string * string -> unit
Public Overridable Sub AppendChildElement (prefix As String, localName As String, namespaceURI As String, value As String)

Parâmetros

prefix
String

O prefixo de namespace do novo nó do elemento filho (se houver).

localName
String

O nome local do novo nó do elemento filho (se houver).

namespaceURI
String

O URI do namespace do novo nó do elemento filho (se houver). Empty e null são equivalentes.

value
String

O valor do novo nó do elemento filho. Se Empty ou null for passado, um elemento vazio será criado.

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 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->AppendChildElement(navigator->Prefix, "pages", navigator->LookupNamespace(navigator->Prefix), "100");

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.AppendChildElement(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100");

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.AppendChildElement(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")

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 nó de elemento, o nó acrescentado se torna o quarto nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

Os valores de URI e prefixo de namespace podem ser obtidos usando o LookupPrefix método ou o LookupNamespace método . Por exemplo, a sintaxe a seguir acrescenta um elemento filho usando o namespace xmlns:bk=http://www.contoso.com/booksno escopo :

navigator.AppendChildElement(navigator.Prefix, "pages", LookupNamespaceURI(navigator.Prefix), String.Empty)  

Isso cria o novo elemento filho <bk:pages/> .

Veja a seguir observações importantes a serem consideradas ao usar o AppendChildElement método .

  • Se o prefixo de namespace especificado for null ou String.Empty, o prefixo do URI do namespace do novo elemento será obtido dos namespaces atuais no escopo. Se não houver nenhum prefixo de namespace atribuído ao URI de namespace especificado no escopo atual, um prefixo de namespace será gerado automaticamente.

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

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

Aplica-se a