XmlNode.Clone Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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).