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

Definição

Cria um novo elemento filho no início 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 PrependChildElement(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void PrependChildElement (string prefix, string localName, string namespaceURI, string value);
public virtual void PrependChildElement (string? prefix, string localName, string? namespaceURI, string? value);
abstract member PrependChildElement : string * string * string * string -> unit
override this.PrependChildElement : string * string * string * string -> unit
Public Overridable Sub PrependChildElement (prefix As String, localName As String, namespaceURI As String, value As String)

Parâmetros

prefix
String

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

localName
String

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

namespaceURI
String

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

value
String

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

Exceções

O nó atual no qual o XPathNavigator está posicionado não permite que um novo nó filho seja anexado.

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

Exemplos

No exemplo a seguir, um novo pages elemento filho é anexado ao início da lista de elementos filho do primeiro book elemento no contosoBooks.xml arquivo.

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->PrependChildElement(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.PrependChildElement(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.PrependChildElement(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

A anexação de um nó filho adiciona o novo nó ao início da lista de nós filho para o nó atual. Por exemplo, quando existem três nós filho para um elemento, o nó prefixado se torna o primeiro nó filho. Se nenhum nó filho existir, um novo nó filho será criado.

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

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

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

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

  • Se o prefixo de namespace especificado for null ou String.Empty, o prefixo para o 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 do namespace especificado no escopo atual, um prefixo de namespace será gerado automaticamente.

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

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

Aplica-se a