XmlNode.Clone Metodo

Definizione

Crea un duplicato di questo nodo.

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

Valori restituiti

Nodo clonato.

Esempio

Nell'esempio seguente viene clonato il nodo radice del documento 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);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    Public Shared Sub Main()
        
        Dim doc As New XmlDocument()
        doc.LoadXml("<book ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "<price>19.95</price>" & _
                    "</book>")
        
        Dim root As XmlNode = doc.FirstChild
        
        'Clone the root node.  The cloned node includes
        'child nodes. This is similar to calling CloneNode(true).
        Dim clone As XmlNode = root.Clone()
        Console.WriteLine(clone.OuterXml)
    End Sub
End Class

Commenti

La clonazione di un oggetto XmlElement copia tutti gli attributi e i relativi valori, inclusi quelli generati dal processore XML per rappresentare gli attributi predefiniti. Questo metodo clona in modo ricorsivo il nodo e il sottoalbero sottostante.

Clone equivale a chiamare CloneNode(true).

Nella tabella seguente viene descritto il comportamento specifico per ogni XmlNodeTypeoggetto .

Xmlnodetype Clone
Attribute Clona il nodo dell'attributo, inclusi i nodi figlio.
CData Clona il nodo CData, incluso il contenuto dei dati.
Comment Clona il nodo del commento, incluso il relativo contenuto di testo.
Documento Clona il nodo del documento, inclusi tutti i nodi figlio.
DocumentFragment Clona il nodo del frammento di documento, inclusi tutti i nodi figlio.
Tipo di documento Clona il nodo del tipo di documento.
Elemento Clona il nodo dell'elemento, i relativi attributi e tutti i nodi figlio.
Entità I nodi di entità non possono essere clonati.
EntityReference Clona il nodo di riferimento dell'entità. Il testo sostitutivo non è incluso.
Notazione Non è possibile clonare i nodi di notazione.
Istruzione di Elaborazione Clona il nodo dell'istruzione di elaborazione, inclusi i dati e la destinazione.
SignificantWhitespace Clona il nodo dello spazio vuoto significativo, incluso il valore dei dati.
Text Clona il nodo di testo, incluso il relativo valore di dati.
Spazi vuoti Clona il nodo dello spazio vuoto, incluso il relativo valore di dati.
XmlDeclaration Clona il nodo XmlDeclaration, incluso il relativo valore di dati.
Tutti gli altri tipi di nodo. Questi tipi di nodo non possono essere clonati.

Questo metodo è un'estensione Microsoft al dom (Document Object Model).

Si applica a

Vedi anche