XmlNode.Clone Метод

Определение

Создает дубликат этого узла.

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

Возвращаемое значение

Клонированные узлы.

Примеры

В следующем примере клонирует корневой узел 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

Комментарии

Клонирование XmlElement копирует все атрибуты и их значения, включая те, которые создаются обработчиком XML для представления атрибутов по умолчанию. Этот метод рекурсивно клонирует узел и поддерев поддерев.

Clone эквивалентно вызову CloneNode(true).

В следующей таблице описывается конкретное поведение для каждого XmlNodeType.

XmlNodeType Clone
Атрибут Клонирует узел атрибута, включая дочерние узлы.
CData Клонирует узел CData, включая его содержимое данных.
Комментарий Клонирует узел комментариев, включая его текстовое содержимое.
Документ Клонирует узел документа, включая все дочерние узлы.
DocumentFragment Клонирует узел фрагмента документа, включая все дочерние узлы.
Тип документа Клонирует узел типа документа.
Элемент Клонирует узел элемента, его атрибуты и все дочерние узлы.
Entity Узлы сущностей нельзя клонировать.
EntityReference Клонирует узел ссылки на сущность. Текст замены не включен.
Notation Узлы нотации нельзя клонировать.
Инструкция по обработке Клонирует узел инструкций обработки, включая его целевой объект и данные.
ЗначащиеПробелы (SignificantWhitespace) Клонирует значительный узел пробела, включая его значение данных.
Text Клонирует текстовый узел, включая его значение данных.
Пробелы Клонирует узел пробела, включая его значение данных.
Объявление XML Клонирует узел XmlDeclaration, включая его значение данных.
Все остальные типы узлов. Эти типы узлов нельзя клонировать.

Этот метод представляет собой расширение Microsoft объектной модели документа (DOM).

Применяется к

См. также раздел