XmlNode.Clone Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
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).