XmlNode.Clone Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Cria um duplicado deste nó.
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
Devoluções
O nó clonado.
Exemplos
O exemplo seguinte clona o nó raiz do 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
Observações
Clonar e XmlElement copiar todos os atributos e os seus valores, incluindo aqueles gerados pelo processador XML para representar atributos predefinidos. Este método clona recursivamente o nó e a subárvore por baixo dele.
Clone é equivalente a chamar CloneNode(true).
A tabela seguinte descreve o comportamento específico para cada XmlNodeType.
| XmlNodeType | Clone |
|---|---|
| Attribute | Clona o nó de atributo, incluindo os nós filhos. |
| CData | Clona o nó CData, incluindo o seu conteúdo de dados. |
| Comentário | Clona o nó de comentário, incluindo o seu conteúdo textual. |
| Documento | Clona o nó documento, incluindo quaisquer nós filhos. |
| DocumentFragment | Clona o nó fragmentado do documento, incluindo quaisquer nós filhos. |
| Tipo de documento | Clona o nó do tipo documento. |
| Elemento | Clona o nó elemento, os seus atributos e quaisquer nós filhos. |
| Entity | Os nós de entidade não podem ser clonados. |
| EntityReference | Clona o nó de referência da entidade. O texto de substituição não está incluído. |
| Anotações | Os nós de notação não podem ser clonados. |
| Instruções de processamento | Clona o nó de instrução de processamento, incluindo o seu destino e dados. |
| Espaço branco significativo | Clona o nó de espaço em branco significativo, incluindo o seu valor de dados. |
| Texto | Clona o nó de texto, incluindo o seu valor de dados. |
| Whitespace | Clona o nó de espaço em branco, incluindo o seu valor de dados. |
| Declaração XML | Clona o nó XmlDeclaration, incluindo o seu valor de dados. |
| Todos os outros tipos de nós. | Estes tipos de nós não podem ser clonados. |
Este método é uma extensão da Microsoft para o Document Object Model (DOM).