XmlNode.CloneNode(Boolean) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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. |