XPathNavigator.WriteSubtree(XmlWriter) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Envía la secuencia del nodo actual y sus nodos secundarios al objeto XmlWriter especificado.
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)
Parámetros
Ejemplos
En el ejemplo siguiente se muestra el uso del WriteSubtree método en el primer book
elemento del contosoBooks.xml
archivo.
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()
En el ejemplo se toma como entrada el archivo contosoBooks.xml
.
<?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>
Comentarios
Las declaraciones de espacio de nombres para los espacios de nombres en el ámbito del nodo actual se insertan en el XML transmitido al XmlWriter objeto especificado.
Por ejemplo, si se llama al WriteSubtree método en el primer book
elemento del books.xml
archivo, la http://www.contoso.com/books
declaración de espacio de nombres realizada en la parte superior del documento XML aparecerá en el XML transmitido al XmlWriter objeto especificado como se muestra en el ejemplo siguiente.
<?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:
El WriteSubtree método no afecta a la posición de XPathNavigator.