XPathNavigator.WriteSubtree(XmlWriter) Methode

Definition

Streamt den aktuellen Knoten und seine untergeordneten Knoten an das XmlWriter angegebene Objekt.

public:
 virtual void WriteSubtree(System::Xml::XmlWriter ^ writer);
public virtual void WriteSubtree(System.Xml.XmlWriter writer);
abstract member WriteSubtree : System.Xml.XmlWriter -> unit
override this.WriteSubtree : System.Xml.XmlWriter -> unit
Public Overridable Sub WriteSubtree (writer As XmlWriter)

Parameter

writer
XmlWriter

Das XmlWriter Objekt, in das gestreamt werden soll.

Beispiele

Das folgende Beispiel veranschaulicht die Verwendung der WriteSubtree Methode für das erste book Element der contosoBooks.xml Datei.

XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");

XmlWriter writer = XmlWriter.Create("contosoBook.xml");
navigator.WriteSubtree(writer);

writer.Close();
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")

Dim writer As XmlWriter = XmlWriter.Create("contosoBook.xml")
navigator.WriteSubtree(writer)

writer.Close()

Im Beispiel wird die contosoBooks.xml Datei als Eingabe verwendet.

<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>

Hinweise

Namespacedeklarationen für die In-Scope-Namespaces des aktuellen Knotens werden in den XML-Stream eingefügt, der an das XmlWriter angegebene Objekt gestreamt wird.

Wenn die WriteSubtree Methode beispielsweise für das erste book Element der books.xml Datei aufgerufen wird, wird die http://www.contoso.com/books Namespacedeklaration, die oben im XML-Dokument erstellt wurde, im XML-Stream an das XmlWriter angegebene Objekt angezeigt, wie im folgenden Beispiel gezeigt.

<?xml version="1.0" encoding="utf-8"?>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0" xmlns="http://www.contoso.com/books">
    <title>The Autobiography of Benjamin Franklin</title>
    <author>
        <first-name>Benjamin</first-name>
        <last-name>Franklin</last-name>
    </author>
    <price>8.99</price>
</book>

Note

Die WriteSubtree Methode wirkt sich nicht auf die Position der XPathNavigator.

Gilt für: