Condividi tramite


XPathNavigator.WriteSubtree(XmlWriter) Metodo

Definizione

Crea un flusso del nodo corrente e dei relativi nodi figlio verso l'oggetto XmlWriter specificato.

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)

Parametri

writer
XmlWriter

Oggetto XmlWriter a cui inviare il flusso.

Esempio

Nell'esempio seguente viene illustrato l'utilizzo del WriteSubtree metodo sul primo book elemento del contosoBooks.xml file.

    XPathDocument^ document = gcnew 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();
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()

Nell'esempio il file contosoBooks.xml viene considerato come input.

<?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>  

Commenti

Le dichiarazioni dello spazio dei nomi per gli spazi dei nomi nell'ambito del nodo corrente vengono inserite nel flusso XML nell'oggetto XmlWriter specificato.

Ad esempio, se il WriteSubtree metodo viene chiamato sul primo book elemento del books.xml file, la http://www.contoso.com/books dichiarazione dello spazio dei nomi eseguita all'inizio del documento XML verrà visualizzata nel file XML trasmesso all'oggetto XmlWriter specificato come illustrato nell'esempio seguente.

<?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>  

Nota

Il WriteSubtree metodo non influisce sulla posizione dell'oggetto XPathNavigator.

Si applica a