Aracılığıyla paylaş


XmlNode.CloneNode(Boolean) Yöntem

Tanım

Türetilmiş bir sınıfta geçersiz kılındığında düğümün bir kopyasını oluşturur.

public:
 abstract System::Xml::XmlNode ^ CloneNode(bool deep);
public abstract System.Xml.XmlNode CloneNode(bool deep);
abstract member CloneNode : bool -> System.Xml.XmlNode
Public MustOverride Function CloneNode (deep As Boolean) As XmlNode

Parametreler

deep
Boolean

true alt ağacı belirtilen düğüm altında özyinelemeli olarak kopyalamak için; false yalnızca düğümün kendisini klonlama.

Döndürülenler

Kopyalanan düğüm.

Özel durumlar

Kopyalanamayan bir düğüm türünde bu yöntemi çağırma.

Örnekler

Aşağıdaki örnekte derin ve sığ bir kopya arasındaki fark gösterilmektedir.

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;

    //Create a deep clone.  The cloned node
    //includes the child nodes.
    XmlNode deep = root.CloneNode(true);
    Console.WriteLine(deep.OuterXml);

    //Create a shallow clone.  The cloned node does not
    //include the child nodes, but does include its attribute.
    XmlNode shallow = root.CloneNode(false);
    Console.WriteLine(shallow.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
        
        'Create a deep clone.  The cloned node 
        'includes the child nodes.
        Dim deep As XmlNode = root.CloneNode(True)
        Console.WriteLine(deep.OuterXml)
        
        'Create a shallow clone.  The cloned node does not 
        'include the child nodes, but does include its attribute.
        Dim shallow As XmlNode = root.CloneNode(False)
        Console.WriteLine(shallow.OuterXml)
    End Sub
End Class

Açıklamalar

Bu yöntem düğümler için bir kopya oluşturucu görevi görür. Yinelenen düğümün üst öğesi yok (ParentNode döndürür null).

Aşağıdaki tabloda her XmlNodeTypebirine özgü davranış açıklanmaktadır.

Xmlnodetype CloneNode(true) CloneNode(false)
Özellik Alt düğümler de dahil olmak üzere öznitelik düğümünü klonlar. Alt düğümler de dahil olmak üzere öznitelik düğümünü klonlar.
CData Veri içeriği dahil olmak üzere CData düğümünü klonlar. Veri içeriği dahil olmak üzere CData düğümünü klonlar.
Comment Metin içeriği dahil olmak üzere açıklama düğümünü klonlar. Metin içeriği dahil olmak üzere açıklama düğümünü klonlar.
Belge Tüm alt düğümler dahil olmak üzere belge düğümünü klonlar. Belge düğümünü klonlar.
Documentfragment Tüm alt düğümler dahil olmak üzere belge parçası düğümünü klonlar. Belge parçası düğümünü klonlar.
BelgeTürü Belge türü düğümünü klonlar. Belge türü düğümünü klonlar.
Öğe Öğe düğümünü, özniteliklerini ve alt düğümleri klonlar. Tüm varsayılan öznitelikler dahil olmak üzere öğe düğümünü ve özniteliklerini klonlar.
Varlık Varlık düğümleri kopyalanamaz. Varlık düğümleri kopyalanamaz.
EntityReference Varlık başvuru düğümünü klonlar. Değiştirme metni dahil değildir. Varlık başvuru düğümünü klonlar. Değiştirme metni dahil değildir.
Notation Gösterimi düğümleri kopyalanamaz. Gösterimi düğümleri kopyalanamaz.
İşlem Talimatı hedef ve verileri dahil olmak üzere işleme yönerge düğümünü klonlar. hedef ve verileri dahil olmak üzere işleme yönerge düğümünü klonlar.
Önemli Boşluk Veri değeri de dahil olmak üzere önemli boşluk düğümünü klonlar. Veri değeri de dahil olmak üzere önemli boşluk düğümünü klonlar.
Metin Veri değeri de dahil olmak üzere metin düğümünü klonlar. Veri değeri de dahil olmak üzere metin düğümünü klonlar.
Boşluk Veri değeri de dahil olmak üzere boşluk düğümünü klonlar. Veri değeri de dahil olmak üzere boşluk düğümünü klonlar.
XML Bildirimi Veri değeri de dahil olmak üzere XmlDeclaration düğümünü klonlar. Veri değeri de dahil olmak üzere XmlDeclaration düğümünü klonlar.
Diğer tüm düğüm türleri. Bu düğüm türleri kopyalanamaz. Bu düğüm türleri kopyalanamaz.

Şunlara uygulanır