Cette documentation est archivée et n’est pas conservée.

XmlNode.Clone, méthode

Mise à jour : novembre 2007

Crée un doublon de ce nœud.

Espace de noms :  System.Xml
Assembly :  System.Xml (dans System.Xml.dll)

public virtual XmlNode Clone()
public XmlNode Clone()
public function Clone() : XmlNode

Valeur de retour

Type : System.Xml.XmlNode
Nœud cloné.

Le clonage de XmlElement copie tous les attributs et leurs valeurs, y compris ceux qui sont générés par le processeur XML pour représenter les attributs par défaut. Cette méthode clone de manière récursive le nœud et le sous-arbre situé en dessous.

Clone équivaut à appeler CloneNode(true).

Le tableau suivant décrit le comportement spécifique de chaque XmlNodeType.

XmlNodeType

Clone

Attribute

Clone le nœud d'attribut, y compris les nœuds enfants.

CData

Clone le nœud CData, y compris les données qu'il contient.

Comment

Clone le nœud de commentaire, y compris le texte qu'il contient.

Document

Clone le nœud du document, y compris les nœuds enfants.

DocumentFragment

Clone le nœud du fragment de document, y compris les nœuds enfants.

DocumentType

Clone le nœud du type de document.

Element

Clone le nœud d'élément, ses attributs et ses nœuds enfants.

Entity

Les nœuds d'entité ne peuvent pas être clonés.

EntityReference

Clone le nœud de référence d'entité. Le texte de remplacement n'est pas inclus.

Notation

Les nœuds de notation ne peuvent pas être clonés.

ProcessingInstruction

Clone le nœud d'instruction de traitement, y compris sa cible et ses données.

SignificantWhitespace

Clone le nœud d'espace blanc significatif, y compris sa valeur de données.

Text

Clone le nœud de texte, y compris sa valeur de données.

Whitespace

Clone le nœud d'espace blanc, y compris sa valeur de données.

XmlDeclaration

Clone le nœud XmlDeclaration, y compris sa valeur de données.

Tous les autres types de nœuds.

Ces types de nœuds ne peuvent pas être clonés.

Cette méthode est une extension Microsoft du modèle DOM (Document Object Model).

L'exemple suivant clone le nœud racine du document XML.

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "<price>19.95</price>" +
                "</book>");

    XmlNode root = doc.FirstChild;

    //Clone the root node.  The cloned node includes
    //child nodes. This is similar to calling CloneNode(true).
    XmlNode clone = root.Clone();
    Console.WriteLine(clone.OuterXml);
  }
}


import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    public static void main(String[] args)
    {
        XmlDocument doc = new XmlDocument();
        doc.LoadXml("<book ISBN='1-861001-57-5'>"
            + "<title>Pride And Prejudice</title>"
            + "<price>19.95</price>"
            + "</book>");

        XmlNode root = doc.get_FirstChild();

        //Clone the root node.  The cloned node includes
        //child nodes. This is similar to calling CloneNode(true).
        XmlNode clone = root.Clone();
        Console.WriteLine(clone.get_OuterXml());
    } //main
} //Sample


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 2.0, 1.0
Afficher: