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

Définition

Crée un élément frère après le 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 InsertElementAfter(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI, System::String ^ value);
public virtual void InsertElementAfter (string prefix, string localName, string namespaceURI, string value);
public virtual void InsertElementAfter (string? prefix, string localName, string? namespaceURI, string? value);
abstract member InsertElementAfter : string * string * string * string -> unit
override this.InsertElementAfter : string * string * string * string -> unit
Public Overridable Sub InsertElementAfter (prefix As String, localName As String, namespaceURI As String, value As String)

Paramètres

prefix
String

Préfixe d'espace de noms du nouvel élément enfant (le cas échéant).

localName
String

Nom local du nouvel élément enfant (le cas échéant).

namespaceURI
String

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

value
String

Valeur du nouvel élément enfant. Si Empty ou null sont passés, une élément vide est créé

Exceptions

La position de XPathNavigator ne permet pas l'insertion d'un nouveau nœud frère après le nœud actuel.

Le XPathNavigator ne prend pas en charge la modification.

Exemples

Dans l’exemple suivant, un nouvel pages élément est inséré après l’élément price enfant du premier book élément du contosoBooks.xml fichier.

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->MoveToChild("price", "http://www.contoso.com/books");

navigator->InsertElementAfter(navigator->Prefix, "pages", navigator->LookupNamespace(navigator->Prefix), "100");

navigator->MoveToParent();
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.MoveToChild("price", "http://www.contoso.com/books");

navigator.InsertElementAfter(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100");

navigator.MoveToParent();
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.MoveToChild("price", "http://www.contoso.com/books")

navigator.InsertElementAfter(navigator.Prefix, "pages", navigator.LookupNamespace(navigator.Prefix), "100")

navigator.MoveToParent()
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

Le préfixe d’espace de noms et les valeurs d’URI peuvent être obtenus à l’aide de la LookupPrefix méthode ou LookupNamespace . Par exemple, la syntaxe suivante insère un élément frère à l’aide de l’espace de noms xmlns:bk="http://www.contoso.com/books"dans l’étendue :

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

Cela crée le nouvel élément frère <bk:pages/> .

Voici les remarques importantes à prendre en compte lors de l’utilisation de la InsertElementAfter 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 InsertElementAfter méthode n’est valide que lorsque le XPathNavigator est positionné sur un élément, du texte, une instruction de traitement ou un nœud de commentaire.

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

S’applique à