XmlNode.Clone-Methode
Erstellt ein Duplikat dieses Knotens.
Namespace: System.Xml
Assembly: System.Xml (in system.xml.dll)
Syntax
'Declaration
Public Overridable Function Clone As XmlNode
'Usage
Dim instance As XmlNode
Dim returnValue As XmlNode
returnValue = instance.Clone
public virtual XmlNode Clone ()
public:
virtual XmlNode^ Clone ()
public XmlNode Clone ()
public function Clone () : XmlNode
Rückgabewert
Der geklonte Knoten.
Hinweise
Beim Klonen von XmlElement werden sämtliche Attribute und deren Werte kopiert, einschließlich derer, die vom XML-Prozessor für die Darstellung standardisierter Attribute generiert wurden. Diese Methode klont den Knoten und die darunter befindliche Teilstruktur rekursiv.
Clone entspricht dem Aufruf von CloneNode(true)
.
In der folgenden Tabelle wird das spezifische Verhalten für jeden XmlNodeType beschrieben.
XmlNodeType |
Klon |
---|---|
Attribute |
Klont den Attributknoten einschließlich untergeordneter Knoten. |
CData |
Klont den CData-Knoten einschließlich dessen Dateninhalts. |
Comment |
Klont den Kommentarknoten einschließlich dessen Textinhalts. |
Document |
Klont den Dokumentknoten einschließlich sämtlicher untergeordneter Knoten. |
DocumentFragment |
Klont den Dokumentfragmentknoten einschließlich sämtlicher untergeordneter Knoten. |
DocumentType |
Klont den Dokumenttypknoten. |
Element |
Klont den Elementknoten, dessen Attribute und sämtliche untergeordneten Knoten. |
Entity |
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 Ziel und Daten. |
SignificantWhitespace |
Klont den Knoten für signifikanten Leerraum, einschließlich dessen Dateninhalts. |
Text |
Klont den Textknoten einschließlich des zugehörigen Datenwerts. |
Whitespace |
Klont den Leerraumknoten einschließlich dessen Dateninhalts. |
XmlDeclaration |
Klont den Knoten für die XML-Deklaration einschließlich des zugehörigen Datenwerts. |
Alle anderen Knotentypen. |
Diese Knotentypen können nicht geklont werden. |
Diese Methode ist eine Microsoft-Erweiterung des Dokumentobjektmodells (Document Object Model, DOM).
Beispiel
Im folgenden Beispiel wird der Stammknoten des XML-Dokuments geklont.
Option Explicit
Option Strict
Imports System
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 'Main
End Class 'Sample
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);
}
}
#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 );
}
import System.*;
import System.IO.*;
import System.Xml.*;
public class Sample
{
public static void main(String[] args)
{
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.get_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.get_OuterXml());
} //main
} //Sample
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
XmlNode-Klasse
XmlNode-Member
System.Xml-Namespace
CloneNode