DataTable.WriteXml DataTable.WriteXml DataTable.WriteXml DataTable.WriteXml Method

Definizione

Scrive i contenuti correnti della classe DataTable come XML.Writes the current contents of the DataTable as XML.

Overload

WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto TextWriter specificato.Writes the current contents of the DataTable as XML using the specified TextWriter. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto TextWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per la classe DataTable utilizzando il file specificato e l'enumerazione XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato utilizzando l'oggetto XmlWriteMode specificato.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto XmlWriter specificato.Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto XmlWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato utilizzando l'oggetto XmlWriteMode specificato.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto TextWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean)

Scrive i contenuti correnti della classe DataTable come XML tramite il file specificato.Writes the current contents of the DataTable as XML using the specified file. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto Stream specificato.Writes the current contents of the DataTable as XML using the specified Stream. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto XmlWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String) WriteXml(String) WriteXml(String) WriteXml(String)

Scrive i contenuti correnti della classe DataTable come XML tramite il file specificato.Writes the current contents of the DataTable as XML using the specified file.

WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto TextWriter specificato.Writes the current contents of the DataTable as XML using the specified TextWriter.

WriteXml(Stream) WriteXml(Stream) WriteXml(Stream)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto Stream specificato.Writes the current contents of the DataTable as XML using the specified Stream.

WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per la classe DataTable utilizzando il file specificato e l'enumerazione XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto XmlWriter specificato.Writes the current contents of the DataTable as XML using the specified XmlWriter.

Esempi

La seguente applicazione console crea due DataTable istanze, aggiungere ciascuno a un DataSet, crea un DataRelation stabilire una correlazione di due tabelle e quindi Usa il WriteXml metodo per scrivere i dati contenuti all'interno della tabella padre di un TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. Nell'esempio viene illustrato il comportamento quando si impostano le writeHierarchy parametri per ognuno dei relativi valori.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

Nota

In questo esempio viene illustrato come utilizzare una delle versioni di overload del WriteXml.This example shows how to use one of the overloaded versions of WriteXml. Per altri esempi che potrebbero essere disponibili, vedere gli argomenti di overload singoli.For other examples that might be available, see the individual overload topics.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer, string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", _
      GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

Nell'esempio viene visualizzato il seguente output nella finestra della console:The example displays the following output in the console window:

==============================  
Customer table, without hierarchy  
==============================  
<NewDataSet>  
  <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema  
" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
    <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
      <xs:complexType>  
        <xs:choice minOccurs="0" maxOccurs="unbounded">  
          <xs:element name="Table1">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="ID" type="xs:int" />  
                <xs:element name="Name" type="xs:string" minOccurs="0" />  
              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
        </xs:choice>  
      </xs:complexType>  
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table1" />  
        <xs:field xpath="ID" />  
      </xs:unique>  
    </xs:element>  
  </xs:schema>  
  <Table1>  
    <ID>1</ID>  
    <Name>Mary</Name>  
  </Table1>  
  <Table1>  
    <ID>2</ID>  
    <Name>Andy</Name>  
  </Table1>  
  <Table1>  
    <ID>3</ID>  
    <Name>Peter</Name>  
  </Table1>  
  <Table1>  
    <ID>4</ID>  
    <Name>Russ</Name>  
  </Table1>  
</NewDataSet>  
==============================  
Customer table, with hierarchy  
==============================  
<NewDataSet>  
  <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema  
" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
    <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
      <xs:complexType>  
        <xs:choice minOccurs="0" maxOccurs="unbounded">  
          <xs:element name="Table1">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="ID" type="xs:int" />  
                <xs:element name="Name" type="xs:string" minOccurs="0" />  
              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
          <xs:element name="Table2">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="OrderID" type="xs:int" />  
                <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
                <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  

              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
        </xs:choice>  
      </xs:complexType>  
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table1" />  
        <xs:field xpath="ID" />  
      </xs:unique>  
      <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" m  
sdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table2" />  
        <xs:field xpath="OrderID" />  
      </xs:unique>  
      <xs:keyref name="CustomerOrder" refer="Constraint1">  
        <xs:selector xpath=".//Table2" />  
        <xs:field xpath="CustomerID" />  
      </xs:keyref>  
    </xs:element>  
  </xs:schema>  
  <Table1>  
    <ID>1</ID>  
    <Name>Mary</Name>  
  </Table1>  
  <Table1>  
    <ID>2</ID>  
    <Name>Andy</Name>  
  </Table1>  
  <Table1>  
    <ID>3</ID>  
    <Name>Peter</Name>  
  </Table1>  
  <Table1>  
    <ID>4</ID>  
    <Name>Russ</Name>  
  </Table1>  
  <Table2>  
    <OrderID>1</OrderID>  
    <CustomerID>1</CustomerID>  
    <OrderDate>2003-12-02T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>2</OrderID>  
    <CustomerID>1</CustomerID>  
    <OrderDate>2004-01-03T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>3</OrderID>  
    <CustomerID>2</CustomerID>  
    <OrderDate>2004-11-13T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>4</OrderID>  
    <CustomerID>3</CustomerID>  
    <OrderDate>2004-05-16T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>5</OrderID>  
    <CustomerID>3</CustomerID>  
    <OrderDate>2004-05-22T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>6</OrderID>  
    <CustomerID>4</CustomerID>  
    <OrderDate>2004-06-15T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
</NewDataSet>  

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto TextWriter specificato.Writes the current contents of the DataTable as XML using the specified TextWriter. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXml(System::IO::TextWriter ^ writer, bool writeHierarchy);
public void WriteXml (System.IO.TextWriter writer, bool writeHierarchy);
member this.WriteXml : System.IO.TextWriter * bool -> unit
Public Sub WriteXml (writer As TextWriter, writeHierarchy As Boolean)

Parametri

writer
TextWriter TextWriter TextWriter TextWriter

Oggetto TextWriter con cui scrivere il contenuto.The TextWriter with which to write the content.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Esempi

La seguente applicazione console crea due DataTable istanze, aggiungere ciascuno a un DataSet, crea un DataRelation stabilire una correlazione di due tabelle e quindi Usa il WriteXml metodo per scrivere i dati contenuti all'interno della tabella padre di un TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. Nell'esempio viene illustrato il comportamento quando si impostano i writeHierarchy parametro per true.The example demonstrates the behavior when setting the writeHierarchy parameter to true.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter stream, 
    string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(stream.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXml(writer, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", _
      GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal stream As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(stream.ToString())
End Sub

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutte le relative tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all its descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto TextWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

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)

Parametri

writer
TextWriter TextWriter TextWriter TextWriter

Classe TextWriter utilizzata per scrivere il documento.The TextWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per la classe DataTable utilizzando il file specificato e l'enumerazione XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to 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)

Parametri

fileName
String String String String

Nome del file in cui vengono scritti i dati.The name of the file to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato utilizzando l'oggetto XmlWriteMode specificato.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

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

Parametri

stream
Stream Stream Stream Stream

Il flusso in cui vengono scritti i dati.The stream to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto XmlWriter specificato.Writes the current contents of the DataTable as XML using the specified XmlWriter.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, bool writeHierarchy);
public void WriteXml (System.Xml.XmlWriter writer, bool writeHierarchy);
member this.WriteXml : System.Xml.XmlWriter * bool -> unit
Public Sub WriteXml (writer As XmlWriter, writeHierarchy As Boolean)

Parametri

writer
XmlWriter XmlWriter XmlWriter XmlWriter

Classe XmlWriter con cui scrivere i contenuti.The XmlWriter with which to write the contents.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e le relative tabelle derivate correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto XmlWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema.

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)

Parametri

writer
XmlWriter XmlWriter XmlWriter XmlWriter

Classe XmlWriter utilizzata per scrivere il documento.The XmlWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato utilizzando l'oggetto XmlWriteMode specificato.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode, bool writeHierarchy);
public void WriteXml (System.IO.Stream stream, System.Data.XmlWriteMode mode, bool writeHierarchy);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode * bool -> unit

Parametri

stream
Stream Stream Stream Stream

Il flusso in cui vengono scritti i dati.The stream to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere, il WriteXml metodo consente di salvare i dati solo per la tabella corrente.Normally, the WriteXml method saves data only for the current table. Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutti i discendenti, tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto TextWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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

Parametri

writer
TextWriter TextWriter TextWriter TextWriter

Classe TextWriter utilizzata per scrivere il documento.The TextWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Esempi

La seguente applicazione console crea due DataTable istanze, aggiungere ciascuno a un DataSet, crea un DataRelation stabilire una correlazione di due tabelle e quindi Usa il WriteXml metodo per scrivere i dati contenuti all'interno della tabella padre di un TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. Nell'esempio viene illustrato il comportamento quando si impostano le writeHierarchy parametri per ognuno dei relativi valori.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer, 
    string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", _
      GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

Nell'esempio viene visualizzato il seguente output nella finestra della console:The example displays the following output in the console window:

==============================  
Customer table, without hierarchy  
==============================  
<NewDataSet>  
  <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema  
" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
    <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
      <xs:complexType>  
        <xs:choice minOccurs="0" maxOccurs="unbounded">  
          <xs:element name="Table1">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="ID" type="xs:int" />  
                <xs:element name="Name" type="xs:string" minOccurs="0" />  
              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
        </xs:choice>  
      </xs:complexType>  
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table1" />  
        <xs:field xpath="ID" />  
      </xs:unique>  
    </xs:element>  
  </xs:schema>  
  <Table1>  
    <ID>1</ID>  
    <Name>Mary</Name>  
  </Table1>  
  <Table1>  
    <ID>2</ID>  
    <Name>Andy</Name>  
  </Table1>  
  <Table1>  
    <ID>3</ID>  
    <Name>Peter</Name>  
  </Table1>  
  <Table1>  
    <ID>4</ID>  
    <Name>Russ</Name>  
  </Table1>  
</NewDataSet>  
==============================  
Customer table, with hierarchy  
==============================  
<NewDataSet>  
  <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema  
" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
    <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
      <xs:complexType>  
        <xs:choice minOccurs="0" maxOccurs="unbounded">  
          <xs:element name="Table1">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="ID" type="xs:int" />  
                <xs:element name="Name" type="xs:string" minOccurs="0" />  
              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
          <xs:element name="Table2">  
            <xs:complexType>  
              <xs:sequence>  
                <xs:element name="OrderID" type="xs:int" />  
                <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
                <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  

              </xs:sequence>  
            </xs:complexType>  
          </xs:element>  
        </xs:choice>  
      </xs:complexType>  
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table1" />  
        <xs:field xpath="ID" />  
      </xs:unique>  
      <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" m  
sdata:PrimaryKey="true">  
        <xs:selector xpath=".//Table2" />  
        <xs:field xpath="OrderID" />  
      </xs:unique>  
      <xs:keyref name="CustomerOrder" refer="Constraint1">  
        <xs:selector xpath=".//Table2" />  
        <xs:field xpath="CustomerID" />  
      </xs:keyref>  
    </xs:element>  
  </xs:schema>  
  <Table1>  
    <ID>1</ID>  
    <Name>Mary</Name>  
  </Table1>  
  <Table1>  
    <ID>2</ID>  
    <Name>Andy</Name>  
  </Table1>  
  <Table1>  
    <ID>3</ID>  
    <Name>Peter</Name>  
  </Table1>  
  <Table1>  
    <ID>4</ID>  
    <Name>Russ</Name>  
  </Table1>  
  <Table2>  
    <OrderID>1</OrderID>  
    <CustomerID>1</CustomerID>  
    <OrderDate>2003-12-02T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>2</OrderID>  
    <CustomerID>1</CustomerID>  
    <OrderDate>2004-01-03T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>3</OrderID>  
    <CustomerID>2</CustomerID>  
    <OrderDate>2004-11-13T00:00:00.0000000-08:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>4</OrderID>  
    <CustomerID>3</CustomerID>  
    <OrderDate>2004-05-16T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>5</OrderID>  
    <CustomerID>3</CustomerID>  
    <OrderDate>2004-05-22T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
  <Table2>  
    <OrderID>6</OrderID>  
    <CustomerID>4</CustomerID>  
    <OrderDate>2004-06-15T00:00:00.0000000-07:00</OrderDate>  
  </Table2>  
</NewDataSet>  

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere, il WriteXml metodo consente di salvare i dati solo per la tabella corrente.Normally, the WriteXml method saves data only for the current table. Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutti i discendenti, tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean)

Scrive i contenuti correnti della classe DataTable come XML tramite il file specificato.Writes the current contents of the DataTable as XML using the specified file. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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

Parametri

fileName
String String String String

File in cui scrivere i dati XML.The file to which to write the XML data.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutti i discendenti, tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto Stream specificato.Writes the current contents of the DataTable as XML using the specified Stream. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXml(System::IO::Stream ^ stream, bool writeHierarchy);
public void WriteXml (System.IO.Stream stream, bool writeHierarchy);
member this.WriteXml : System.IO.Stream * bool -> unit

Parametri

stream
Stream Stream Stream Stream

Il flusso in cui vengono scritti i dati.The stream to which the data will be written.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Usare la WriteXmlSchema metodo per scrivere lo schema per un DataTable a un documento XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Lo schema include le definizioni di tabella, relazioni e vincoli.The schema includes table, relation, and constraint definitions.

Lo schema XML viene scritto usando lo standard XSD.The XML schema is written using the XSD standard.

Per scrivere i dati in un documento XML, usare il WriteXml (metodo).To write the data to an XML document, use the WriteXml method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutti i discendenti, tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando l'oggetto XmlWriter e l'oggetto XmlWriteMode specificati.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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

Parametri

writer
XmlWriter XmlWriter XmlWriter XmlWriter

Classe XmlWriter utilizzata per scrivere il documento.The XmlWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e le relative tabelle derivate correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(String) WriteXml(String) WriteXml(String) WriteXml(String)

Scrive i contenuti correnti della classe DataTable come XML tramite il file specificato.Writes the current contents of the DataTable as XML using the specified file.

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

Parametri

fileName
String String String String

File in cui scrivere i dati XML.The file to which to write the XML data.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto TextWriter specificato.Writes the current contents of the DataTable as XML using the specified TextWriter.

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)

Parametri

writer
TextWriter TextWriter TextWriter TextWriter

Oggetto TextWriter con cui scrivere il contenuto.The TextWriter with which to write the content.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(Stream) WriteXml(Stream) WriteXml(Stream)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto Stream specificato.Writes the current contents of the DataTable as XML using the specified Stream.

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

Parametri

stream
Stream Stream Stream Stream

Il flusso in cui vengono scritti i dati.The stream to which the data will be written.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che include il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean)

Scrive i dati correnti e, facoltativamente, lo schema per la classe DataTable utilizzando il file specificato e l'enumerazione XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Per scrivere lo schema, impostare il valore del parametro mode su WriteSchema.To write the schema, set the value for the mode parameter to WriteSchema. Per salvare i dati per la tabella e i relativi discendenti, impostare il parametro writeHierarchy su true.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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

Parametri

fileName
String String String String

Nome del file in cui vengono scritti i dati.The name of the file to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

Uno dei valori di XmlWriteMode.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

Se true, viene scritto il contenuto della tabella corrente e tutti i relativi discendenti.If true, write the contents of the current table and all its descendants. Se false (valore predefinito), vengono scritti solo i dati per la tabella corrente.If false (the default value), write the data for the current table only.

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere, il WriteXml metodo consente di salvare i dati solo per la tabella corrente.Normally, the WriteXml method saves data only for the current table. Se si desidera salvare i dati per la tabella corrente e tutti gli schemi, il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.If you want to save the data for the current table and all of schema, the WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

In genere il WriteXml metodo scrive i dati solo per la tabella corrente.Normally the WriteXml method writes the data only for the current table. Per scrivere i dati per la tabella corrente e tutte le tabelle correlate, chiamare il metodo con il writeHierarchy parametro è impostato su true.To write the data for the current table and all descendant, related tables, call the method with the writeHierarchy parameter set to true.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter)

Scrive il contenuto corrente dell'oggetto DataTable come XML usando l'oggetto XmlWriter specificato.Writes the current contents of the DataTable as XML using the specified XmlWriter.

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)

Parametri

writer
XmlWriter XmlWriter XmlWriter XmlWriter

Classe XmlWriter con cui scrivere i contenuti.The XmlWriter with which to write the contents.

Implementazioni

Commenti

Il WriteXml metodo fornisce un modo per scrivere solo i dati o sia i dati dello schema da un DataTable in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. Per scrivere dati e schema, usare uno degli overload che includono il XmlWriteMode parametro e impostarne il valore su WriteSchema.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

Si noti che lo stesso vale per il ReadXml e ReadXmlSchema metodi, rispettivamente.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. Per leggere i dati XML, oppure lo schema e i dati nel DataTable, usare il ReadXml (metodo).To read XML data, or both schema and data into the DataTable, use the ReadXml method. Per leggere solo lo schema, usare il ReadXmlSchema (metodo).To read just the schema, use the ReadXmlSchema method.

Nota

Un' InvalidOperationException viene generata se un tipo di colonna nel DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

Vedi anche

Si applica a