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

Définition

Crée un nœud d'élément enfant à la fin de la liste de nœuds enfants du nœud actuel à l'aide du préfixe d'espace de noms, du nom local et de l'URI d'espace de noms spécifiés avec la valeur spécifiée.

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)

Paramètres

prefix
String

Préfixe d'espace de noms du nouveau nœud enfant (le cas échéant).

localName
String

Nom local du nouveau nœud enfant (le cas échéant).

namespaceURI
String

URI de l'espace de noms du nœud du nouvel élément enfant (le cas échéant). Empty et null sont équivalents.

value
String

Valeur du nouveau nœud enfant. Si Empty ou null sont passés, une élément vide est créé

Exceptions

Le nœud actuel sur lequel le XPathNavigator est positionné ne correspond pas au nœud racine ni à un nœud d’élément.

Le XPathNavigator ne prend pas en charge la modification.

Exemples

Dans l'exemple suivant, un nouvel élément pages enfant est ajouté à la liste d'éléments enfants du premier élément book du fichier 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)

L'exemple prend le fichier contosoBooks.xml comme entrée.

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

Remarques

L’ajout d’un nœud enfant ajoute le nouveau nœud à la fin de la liste des nœuds enfants pour le nœud actuel. Par exemple, quand trois nœuds enfants existent pour un nœud d’élément, le nœud ajouté devient le quatrième nœud enfant. S’il n’existe aucun nœud enfant, un nœud enfant est créé.

Les valeurs de préfixe et d’URI d’espace de noms peuvent être obtenues à l’aide de la LookupPrefix méthode ou de la LookupNamespace méthode . Par exemple, la syntaxe suivante ajoute un élément enfant à l’aide de l’espace de noms xmlns:bk=http://www.contoso.com/booksdans l’étendue :

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

Cela crée l’élément enfant <bk:pages/> .

Voici les remarques importantes à prendre en compte lors de l’utilisation de la AppendChildElement méthode .

  • Si le préfixe d’espace de noms spécifié est null ou String.Empty, le préfixe de l’URI d’espace de noms du nouvel élément est obtenu à partir des espaces de noms actuels dans l’étendue. Si aucun préfixe d’espace de noms n’est affecté à l’URI d’espace de noms spécifié dans l’étendue actuelle, un préfixe d’espace de noms est généré automatiquement.

  • La AppendChildElement méthode est valide uniquement lorsque est XPathNavigator positionné sur le nœud racine ou un nœud d’élément.

  • La AppendChildElement méthode n’affecte pas la position du XPathNavigator.

S’applique à