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

Definição

Cria um novo elemento filho no início da lista de nós filhos do nó atual usando o prefixo do espaço de nomes, o nome local e o URI do espaço de nomes especificados 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 existir).

localName
String

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

namespaceURI
String

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

value
String

O valor do elemento do novo filho. Se Empty ou null forem ultrapassados, cria-se um elemento vazio.

Exceções

O nó atual onde está XPathNavigator posicionado não permite que um novo nó filho seja preinstalado.

Não XPathNavigator suporta edição.

Exemplos

No exemplo seguinte, um novo pages elemento filho é colocado no início da lista de elementos filhos do primeiro book elemento do contosoBooks.xml ficheiro.

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 contosoBooks.xml arquivo como uma 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>

Observações

Antes de lançar um nó filho adiciona o novo nó ao início da lista de nós filhos do nó atual. Por exemplo, quando existem três nós filhos para um elemento, o nó prependido torna-se o primeiro nó filho. Se não existirem nós filhos, então é criado um novo nó filho.

Os valores do prefixo e URI do espaço de nomes podem ser obtidos usando o LookupPrefix método ou.LookupNamespace Por exemplo, a seguinte sintaxe antepõe um elemento filho usando o namespace xmlns:bk="http://www.contoso.com/books"dentro do âmbito :

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

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

Seguem-se as notas importantes a considerar ao utilizar o PrependChildElement método.

  • Se o prefixo do espaço de nomes especificado for null ou String.Empty, então o prefixo para o URI do espaço de nomes do novo elemento é obtido a partir do espaço de nomes atual no âmbito do espaço. Se não houver prefixo de espaço de nomes atribuído ao URI de espaço de nomes especificado no âmbito atual, então um prefixo de espaço de nomes é automaticamente gerado.

  • O PrependChildElement método é válido apenas quando o XPathNavigator está posicionado num nó elemento.

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

Aplica-se a