DataSet.WriteXml Método

Definición

Escribe datos XML y, de forma opcional, el esquema del DataSet.

Sobrecargas

WriteXml(XmlWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto XmlWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(String, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet en el archivo indicado mediante la enumeración XmlWriteMode especificada. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(TextWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto TextWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(Stream, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto Stream y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(String)

Escribe los datos actuales para el DataSet en el archivo especificado.

WriteXml(TextWriter)

Escribe los datos actuales para el objeto DataSet mediante el objeto TextWriter especificado.

WriteXml(XmlWriter)

Escribe los datos actuales para el DataSet en el XmlWriter especificado.

WriteXml(Stream)

Escribe los datos actuales para el objeto DataSet mediante el objeto Stream especificado.

WriteXml(XmlWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto XmlWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As XmlWriter, mode As XmlWriteMode)

Parámetros

writer
XmlWriter

XmlWriter con el que se va a escribir.

mode
XmlWriteMode

Uno de los valores de XmlWriteMode.

Ejemplos

En el ejemplo siguiente se crea un System.IO.FileStream objeto que se usa para crear un nuevo XmlTextWriterobjeto . El XmlTextWriter objeto se usa con el WriteXml método para escribir un documento XML.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Create the FileStream to write with.
    System.IO.FileStream stream = new System.IO.FileStream
        (filename, System.IO.FileMode.Create);

    // Create an XmlTextWriter with the fileStream.
    System.Xml.XmlTextWriter xmlWriter =
        new System.Xml.XmlTextWriter(stream,
        System.Text.Encoding.Unicode);

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(xmlWriter);
    xmlWriter.Close();
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
    If thisDataSet Is Nothing Then
        Return
    End If

    ' Create a file name to write to.
    Dim filename As String = "XmlDoc.xml"

    ' Create the FileStream to write with.
    Dim stream As New System.IO.FileStream _
       (filename, System.IO.FileMode.Create)

    ' Create an XmlTextWriter with the fileStream.
    Dim xmlWriter As New System.Xml.XmlTextWriter _
       (stream, System.Text.Encoding.Unicode)

    ' Write to the file with the WriteXml method.
    thisDataSet.WriteXml(xmlWriter)
    xmlWriter.Close()
End Sub

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, establezca el mode parámetro en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(String, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet en el archivo indicado mediante la enumeración XmlWriteMode especificada. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

public:
 void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode);
public void WriteXml (string fileName, System.Data.XmlWriteMode mode);
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (fileName As String, mode As XmlWriteMode)

Parámetros

fileName
String

Nombre del archivo (incluida la ruta) en el que se va a escribir.

mode
XmlWriteMode

Uno de los valores de XmlWriteMode.

Excepciones

FileIOPermission no está establecido en Write.

Ejemplos

En el ejemplo siguiente se usa el WriteXml método para escribir un documento XML.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(filename);
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
    If thisDataSet Is Nothing Then
        Return
    End If

    ' Create a file name to write to.
    Dim filename As String = "XmlDoc.xml"

    ' Write to the file with the WriteXml method.
    thisDataSet.WriteXml(filename)
End Sub

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, establezca el mode parámetro en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(TextWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto TextWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

public:
 void WriteXml(System::IO::TextWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As TextWriter, mode As XmlWriteMode)

Parámetros

writer
TextWriter

Objeto TextWriter que se utiliza para escribir el documento.

mode
XmlWriteMode

Uno de los valores de XmlWriteMode.

Ejemplos

En el ejemplo siguiente se crea primero un sencillo DataSet con una DataTable, dos columnas y diez filas. El esquema y los DataSet datos se escriben en el disco invocando el WriteXml método . Se crea un segundo DataSet y el método se usa para rellenarlo con el esquema y los ReadXml datos.

private void DemonstrateReadWriteXMLDocumentWithFileStream()
{
    // Create a DataSet with one table and two columns.
    DataSet originalDataSet = new DataSet("dataSet");
    DataTable table = new DataTable("table");
    DataColumn idColumn = new DataColumn("id",
        Type.GetType("System.Int32"));
    idColumn.AutoIncrement= true;

    DataColumn itemColumn = new DataColumn("item");
    table.Columns.Add(idColumn);
    table.Columns.Add(itemColumn);
    originalDataSet.Tables.Add(table);
    // Add ten rows.

    DataRow newRow;
    for(int i = 0; i < 10; i++)
    {
        newRow = table.NewRow();
        newRow["item"]= "item " + i;
        table.Rows.Add(newRow);
    }
    originalDataSet.AcceptChanges();

    // Print out values of each table in the DataSet
    // using the function defined below.
    PrintValues(originalDataSet, "Original DataSet");

    // Write the schema and data to XML file with FileStream.
    string xmlFilename = "XmlDocument.xml";
    System.IO.FileStream streamWrite = new System.IO.FileStream
        (xmlFilename, System.IO.FileMode.Create);

    // Use WriteXml to write the XML document.
    originalDataSet.WriteXml(streamWrite);

    // Close the FileStream.
    streamWrite.Close();

    // Dispose of the original DataSet.
    originalDataSet.Dispose();
    // Create a new DataSet.
    DataSet newDataSet = new DataSet("New DataSet");

    // Read the XML document back in.
    // Create new FileStream to read schema with.
    System.IO.FileStream streamRead = new System.IO.FileStream
        (xmlFilename,System.IO.FileMode.Open);
    newDataSet.ReadXml(streamRead);

    // Print out values of each table in the DataSet
    // using the function defined below.
    PrintValues(newDataSet,"New DataSet");
}

private void PrintValues(DataSet dataSet, string label)
{
    Console.WriteLine("\n" + label);
    foreach(DataTable table in dataSet.Tables)
    {
        Console.WriteLine("TableName: " + table.TableName);
        foreach(DataRow row in table.Rows)
        {
            foreach(DataColumn column in table.Columns)
            {
                Console.Write("\table " + row[column] );
            }
            Console.WriteLine();
        }
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithFileStream()
    ' Create a DataSet with one table and two columns.
    Dim originalDataSet As New DataSet("dataSet")
    Dim table As New DataTable("table")
    Dim idColumn As New DataColumn("id", _
       Type.GetType("System.Int32"))
    idColumn.AutoIncrement = True

    Dim itemColumn As New DataColumn("item")
    table.Columns.Add(idColumn)
    table.Columns.Add(itemColumn)
    originalDataSet.Tables.Add(table)

    ' Add ten rows.
    Dim newRow As DataRow
    Dim i As Integer
    For i = 0 To 9
        newRow = table.NewRow()
        newRow("item") = "item " & i.ToString()
        table.Rows.Add(newRow)
    Next i
    originalDataSet.AcceptChanges()

    ' Print out values of each table in the DataSet 
    ' using the function defined below.
    PrintValues(originalDataSet, "Original DataSet")

    ' Write the schema and data to XML file with FileStream.
    Dim xmlFilename As String = "XmlDocument.xml"
    Dim streamWrite As New System.IO.FileStream _
       (xmlFilename, System.IO.FileMode.Create)

    ' Use WriteXml to write the XML document.
    originalDataSet.WriteXml(streamWrite)

    ' Close the FileStream.
    streamWrite.Close()
     
    ' Dispose of the original DataSet.
    originalDataSet.Dispose()
    ' Create a new DataSet.
    Dim newDataSet As New DataSet("New DataSet")
       
    ' Read the XML document back in. 
    ' Create new FileStream to read schema with.
    Dim streamRead As New System.IO.FileStream _
       (xmlFilename, System.IO.FileMode.Open)
     
    newDataSet.ReadXml(streamRead)
    ' Print out values of each table in the DataSet  
    ' using the function defined below.
    PrintValues(newDataSet, "New DataSet")
End Sub
   
Private Sub PrintValues(dataSet As DataSet, label As String)
    Console.WriteLine(ControlChars.Cr & label)
    Dim table As DataTable
    Dim row As DataRow
    Dim column As DataColumn
    For Each table In  dataSet.Tables
        Console.WriteLine("TableName: " & table.TableName)         
        For Each row In  table.Rows             
            For Each column In  table.Columns
                Console.Write(ControlChars.Tab & " " & _
                   row(column).ToString())
            Next column
            Console.WriteLine()
        Next row
    Next table
End Sub

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, establezca el mode parámetro en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(Stream, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto Stream y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.Stream? stream, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.Stream stream, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode)

Parámetros

stream
Stream

Objeto Stream utilizado para escribir en un archivo.

mode
XmlWriteMode

Uno de los valores de XmlWriteMode.

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, establezca el mode parámetro en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(String)

Escribe los datos actuales para el DataSet en el archivo especificado.

public:
 void WriteXml(System::String ^ fileName);
public void WriteXml (string fileName);
member this.WriteXml : string -> unit
Public Sub WriteXml (fileName As String)

Parámetros

fileName
String

Nombre del archivo (incluida la ruta) en el que se va a escribir.

Excepciones

FileIOPermission no está establecido en Write.

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, use una de las sobrecargas que incluye el mode parámetro y establezca su valor en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(TextWriter)

Escribe los datos actuales para el objeto DataSet mediante el objeto TextWriter especificado.

public:
 void WriteXml(System::IO::TextWriter ^ writer);
public void WriteXml (System.IO.TextWriter? writer);
public void WriteXml (System.IO.TextWriter writer);
member this.WriteXml : System.IO.TextWriter -> unit
Public Sub WriteXml (writer As TextWriter)

Parámetros

writer
TextWriter

Objeto TextWriter con el que se va a escribir.

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, use una de las sobrecargas que incluye el mode parámetro y establezca su valor en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(XmlWriter)

Escribe los datos actuales para el DataSet en el XmlWriter especificado.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer);
public void WriteXml (System.Xml.XmlWriter? writer);
public void WriteXml (System.Xml.XmlWriter writer);
member this.WriteXml : System.Xml.XmlWriter -> unit
Public Sub WriteXml (writer As XmlWriter)

Parámetros

writer
XmlWriter

XmlWriter con el que se va a escribir.

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, use una de las sobrecargas que incluye el mode parámetro y establezca su valor en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a

WriteXml(Stream)

Escribe los datos actuales para el objeto DataSet mediante el objeto Stream especificado.

public:
 void WriteXml(System::IO::Stream ^ stream);
public void WriteXml (System.IO.Stream? stream);
public void WriteXml (System.IO.Stream stream);
member this.WriteXml : System.IO.Stream -> unit
Public Sub WriteXml (stream As Stream)

Parámetros

stream
Stream

Objeto Stream utilizado para escribir en un archivo.

Ejemplos

En el ejemplo siguiente se crea un System.IO.FileStream objeto . A continuación, el objeto se usa con el WriteXml método para escribir un documento XML.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Create the FileStream to write with.
    System.IO.FileStream stream = new System.IO.FileStream
        (filename, System.IO.FileMode.Create);

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(stream);
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
     If thisDataSet Is Nothing Then
         Return
     End If 

    ' Create a file name to write to.
     Dim filename As String = "XmlDoc.xml"

     ' Create the FileStream to write with.
     Dim stream As New System.IO.FileStream _
        (filename, System.IO.FileMode.Create)

     ' Write to the file with the WriteXml method.
     thisDataSet.WriteXml(stream)
End Sub

Comentarios

El WriteXml método proporciona una manera de escribir solo datos, o tanto datos como esquemas de en un DataSet documento XML, mientras que el WriteXmlSchema método escribe solo el esquema. Para escribir datos y esquemas, use una de las sobrecargas que incluye el mode parámetro y establezca su valor en WriteSchema.

Tenga en cuenta que lo mismo es true para los ReadXml métodos y ReadXmlSchema , respectivamente. Para leer datos XML, o tanto el esquema como los DataSetdatos en , use el ReadXml método . Para leer solo el esquema, use el ReadXmlSchema método .

Nota

InvalidOperationException Se producirá una excepción si un tipo de columna en el DataRow que se lee o se escribe en implementa IDynamicMetaObjectProvider y no implementa IXmlSerializable.

Consulte también

Se aplica a