XmlNode.Clone Methode

Definition

Erstellt ein Duplikat dieses Knotens.

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

Gibt zurück

XmlNode

Der geklonte Knoten.

Beispiele

Im folgenden Beispiel wird der Stammknoten des XML-Dokuments geklont.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew 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 );
}
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

Hinweise

Durch Das Klonen einer XmlElement Kopie aller Attribute und deren Werte, einschließlich der von dem XML-Prozessor generierten Attribute, um standardmäßige Attribute darzustellen. Diese Methode klont den Knoten und die Unterstruktur darunter rekursiv ab.

Clone entspricht dem Aufrufen CloneNode(true).

In der folgenden Tabelle werden die spezifischen Verhaltensweisen für jeden XmlNodeTypebeschrieben.

XmlNodeType Klon
attribute Klont den Attributknoten, einschließlich untergeordneter Knoten.
CData Klont den CData-Knoten, einschließlich seiner Dateninhalte.
Kommentar Klont den Kommentarknoten, einschließlich des Textinhalts.
Dokument Klont den Dokumentknoten, einschließlich untergeordneter Knoten.
DocumentFragment Klont den Dokumentfragmentknoten, einschließlich untergeordneter Knoten.
DocumentType Klont den Dokumenttypknoten.
Element Klont den Elementknoten, seine Attribute und alle untergeordneten Knoten.
Entität Entitätsknoten können nicht geklont werden.
EntityReference Klont den Entitätsverweisknoten. Der Ersetzungstext ist davon nicht betroffen.
Notation Notationsknoten können nicht geklont werden.
ProcessingInstruction Klont den Verarbeitungsanweisungsknoten, einschließlich seiner Ziel- und Daten.
SignificantWhitespace Klont den signifikanten Leerraumknoten, einschließlich des Datenwerts.
Text Klont den Textknoten, einschließlich des Datenwerts.
Leerraum Klont den Leerraumknoten, einschließlich des Datenwerts.
XmlDeclaration Klont den XmlDeclaration-Knoten, einschließlich des Datenwerts.
Alle anderen Knotentypen. Diese Knotentypen können nicht geklont werden.

Diese Methode ist eine Microsoft-Erweiterung für das Document-Objektmodell (DOM).

Gilt für

Siehe auch