XPathNavigator.AppendChild Méthode

Définition

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel.

Surcharges

AppendChild()

Retourne un objet XmlWriter permettant de créer un ou plusieurs nœuds enfants à la fin de la liste de nœuds enfants du nœud actuel.

AppendChild(String)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l'aide de la chaîne de données XML spécifiée.

AppendChild(XmlReader)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l’aide du contenu XML de l’objet XmlReader spécifié.

AppendChild(XPathNavigator)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l’aide des nœuds du XPathNavigator spécifié.

AppendChild()

Retourne un objet XmlWriter permettant de créer un ou plusieurs nœuds enfants à la fin de la liste de nœuds enfants du nœud actuel.

public:
 virtual System::Xml::XmlWriter ^ AppendChild();
public virtual System.Xml.XmlWriter AppendChild ();
abstract member AppendChild : unit -> System.Xml.XmlWriter
override this.AppendChild : unit -> System.Xml.XmlWriter
Public Overridable Function AppendChild () As XmlWriter

Retours

XmlWriter

Objet XmlWriter permettant de créer des nœuds enfants à la fin de la liste de nœuds enfants du nœud actuel.

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 pages élément enfant est ajouté à la liste des éléments enfants du premier book élément du contosoBooks.xml fichier à l’aide de l’objet XmlWriter retourné par la AppendChild méthode.

    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");

    XmlWriter^ pages = navigator->AppendChild();
    pages->WriteElementString("pages", "100");
    pages->Close();

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");

XmlWriter pages = navigator.AppendChild();
pages.WriteElementString("pages", "100");
pages.Close();

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")

Dim pages As XmlWriter = navigator.AppendChild()
pages.WriteElementString("pages", "100")
pages.Close()

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 de nœuds enfants ajoute les nouveaux nœuds à la fin de la liste des nœuds enfants pour le nœud actuel. Par exemple, lorsque trois nœuds enfants existent pour un élément, le premier nœud ajouté devient le quatrième nœud enfant. Si aucun nœud enfant n’existe, un nouveau nœud enfant est créé.

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

Vous pouvez écrire plusieurs nœuds dans l’enregistreur. Tous les nœuds sont ajoutés à la fin de la liste des nœuds enfants du nœud actuel.

S’applique à

AppendChild(String)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l'aide de la chaîne de données XML spécifiée.

public:
 virtual void AppendChild(System::String ^ newChild);
public virtual void AppendChild (string newChild);
abstract member AppendChild : string -> unit
override this.AppendChild : string -> unit
Public Overridable Sub AppendChild (newChild As String)

Paramètres

newChild
String

Chaîne de données XML pour le nouveau nœud enfant.

Exceptions

Le paramètre de la chaîne XML est null.

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.

Le paramètre de la chaîne de données XML n'a pas une forme correcte.

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->AppendChild("<pages>100</pages>");

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.AppendChild("<pages>100</pages>");

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.AppendChild("<pages>100</pages>")

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 élément, le nœud ajouté devient le quatrième nœud enfant. Si aucun nœud enfant n’existe, un nouveau nœud enfant est créé.

Pour créer un nœud d’élément, incluez toute la syntaxe XML dans le paramètre de chaîne XML. La chaîne d’un nouveau book nœud est AppendChild("<book/>"). La chaîne d’ajout du texte « book » au nœud de texte du nœud actuel est AppendChild("book"). Si la chaîne XML contient plusieurs nœuds, tous les nœuds sont ajoutés.

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

S’applique à

AppendChild(XmlReader)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l’aide du contenu XML de l’objet XmlReader spécifié.

public:
 virtual void AppendChild(System::Xml::XmlReader ^ newChild);
public virtual void AppendChild (System.Xml.XmlReader newChild);
abstract member AppendChild : System.Xml.XmlReader -> unit
override this.AppendChild : System.Xml.XmlReader -> unit
Public Overridable Sub AppendChild (newChild As XmlReader)

Paramètres

newChild
XmlReader

Objet XmlReader positionné sur les données XML pour le nouveau nœud enfant.

Exceptions

L'objet XmlReader est dans un état d'erreur ou est fermé.

Le paramètre de l’objet XmlReader est null.

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.

Le contenu XML du paramètre de l’objet XmlReader n’est pas mis en forme correctement.

Exemples

Dans l’exemple suivant, un nouvel pages élément enfant est ajouté à la liste des éléments enfants du premier book élément du contosoBooks.xml fichier à l’aide de l’objet XmlReader spécifié. L’espace http://www.contoso.com/books de noms est spécifié afin que le nouvel élément enfant soit ajouté à l’aide du même espace de noms que le document 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");

XmlReader^ pages = XmlReader::Create(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));

navigator->AppendChild(pages);

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");

XmlReader pages = XmlReader.Create(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));

navigator.AppendChild(pages);

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")

Dim pages As XmlReader = XmlReader.Create(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))

navigator.AppendChild(pages)

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 élément, le nœud ajouté devient le quatrième nœud enfant. Si aucun nœud enfant n’existe, un nouveau nœud enfant est créé.

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

  • Si l’objet XmlReader est positionné sur une séquence de nœuds XML, tous les nœuds de la séquence sont ajoutés.

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

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

S’applique à

AppendChild(XPathNavigator)

Crée un nœud enfant à la fin de la liste de nœuds enfants du nœud actuel à l’aide des nœuds du XPathNavigator spécifié.

public:
 virtual void AppendChild(System::Xml::XPath::XPathNavigator ^ newChild);
public virtual void AppendChild (System.Xml.XPath.XPathNavigator newChild);
abstract member AppendChild : System.Xml.XPath.XPathNavigator -> unit
override this.AppendChild : System.Xml.XPath.XPathNavigator -> unit
Public Overridable Sub AppendChild (newChild As XPathNavigator)

Paramètres

newChild
XPathNavigator

Objet XPathNavigator positionné sur le nœud à ajouter en tant que nouveau nœud enfant.

Exceptions

Le paramètre de l’objet XPathNavigator est null.

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 pages élément enfant est ajouté à la liste des éléments enfants du premier book élément du contosoBooks.xml fichier à l’aide du nœud contenu dans le XPathNavigator spécifié. L’espace http://www.contoso.com/books de noms est spécifié afin que le nouvel élément enfant soit ajouté à l’aide du même espace de noms que le document 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");

XmlDocument^ childNodes = gcnew XmlDocument();
childNodes->Load(gcnew StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator^ childNodesNavigator = childNodes->CreateNavigator();


if (childNodesNavigator->MoveToChild("pages", "http://www.contoso.com/books"))
{
    navigator->AppendChild(childNodesNavigator);
}

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");

XmlDocument childNodes = new XmlDocument();
childNodes.Load(new StringReader("<pages xmlns=\"http://www.contoso.com/books\">100</pages>"));
XPathNavigator childNodesNavigator = childNodes.CreateNavigator();

if(childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books"))
{
    navigator.AppendChild(childNodesNavigator);
}

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")

Dim childNodes As XmlDocument = New XmlDocument()

childNodes.Load(New StringReader("<pages xmlns='http://www.contoso.com/books'>100</pages>"))
Dim childNodesNavigator As XPathNavigator = childNodes.CreateNavigator()

If childNodesNavigator.MoveToChild("pages", "http://www.contoso.com/books") Then
    navigator.AppendChild(childNodesNavigator)
End If

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 élément, le nœud ajouté devient le quatrième nœud enfant. Si aucun nœud enfant n’existe, un nouveau nœud enfant est créé.

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

  • Si l’objet XPathNavigator est positionné sur une séquence de nœuds XML, tous les nœuds de la séquence sont ajoutés.

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

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

S’applique à