DataTable.WriteXml Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Scrive il contenuto corrente dell'oggetto DataTable come XML.
Overload
| Nome | Descrizione |
|---|---|
| WriteXml(TextWriter, Boolean) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato TextWriter. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il |
| WriteXml(TextWriter, XmlWriteMode) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato TextWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(String, XmlWriteMode) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando il file specificato e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(Stream, XmlWriteMode) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato usando l'oggetto specificato XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(XmlWriter, Boolean) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato XmlWriter. |
| WriteXml(XmlWriter, XmlWriteMode) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato XmlWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(Stream, XmlWriteMode, Boolean) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato usando l'oggetto specificato XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(TextWriter, XmlWriteMode, Boolean) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato TextWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(String, Boolean) |
Scrive il contenuto corrente di DataTable come XML utilizzando il file specificato. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il |
| WriteXml(Stream, Boolean) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato Stream. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il |
| WriteXml(XmlWriter, XmlWriteMode, Boolean) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato XmlWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(String) |
Scrive il contenuto corrente di DataTable come XML utilizzando il file specificato. |
| WriteXml(TextWriter) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato TextWriter. |
| WriteXml(Stream) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato Stream. |
| WriteXml(String, XmlWriteMode, Boolean) |
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando il file specificato e XmlWriteMode. Per scrivere lo schema, impostare il valore per il |
| WriteXml(XmlWriter) |
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato XmlWriter. |
Esempio
L'applicazione console seguente crea due DataTable istanze, aggiunge ognuna a un DataSetoggetto , crea una DataRelation relazione tra le due tabelle e quindi usa il WriteXml metodo per scrivere i dati contenuti nella tabella padre in un oggetto TextWriter. Nell'esempio viene illustrato il comportamento quando si imposta il writeHierarchy parametro su ognuno dei relativi valori.
Note
In questo esempio viene illustrato come usare una delle versioni di overload di WriteXml. Per altri esempi che potrebbero essere disponibili, vedere i singoli argomenti di overload.
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 l'output seguente nella finestra della console:
==============================
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 consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
WriteXml(TextWriter, Boolean)
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato TextWriter. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
Oggetto TextWriter con cui scrivere il contenuto.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Esempio
L'applicazione console seguente crea due DataTable istanze, aggiunge ognuna a un DataSetoggetto , crea una DataRelation relazione tra le due tabelle e quindi usa il WriteXml metodo per scrivere i dati contenuti nella tabella padre in un oggetto TextWriter. Nell'esempio viene illustrato il comportamento quando si imposta il writeHierarchy parametro su 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 consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e per tutte le tabelle discendenti, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(TextWriter, XmlWriteMode)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato TextWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su 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
Oggetto TextWriter utilizzato per scrivere il documento.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(String, XmlWriteMode)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando il file specificato e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su 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
Nome del file in cui verranno scritti i dati.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(Stream, XmlWriteMode)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato usando l'oggetto specificato XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su 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
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode)
Parametri
- stream
- Stream
Flusso in cui verranno scritti i dati.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(XmlWriter, Boolean)
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
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e l'intero discendente, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(XmlWriter, XmlWriteMode)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato XmlWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su 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
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(Stream, XmlWriteMode, Boolean)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable nel file specificato usando l'oggetto specificato XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su WriteSchema. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode, writeHierarchy As Boolean)
Parametri
- stream
- Stream
Flusso in cui verranno scritti i dati.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere, il WriteXml metodo salva i dati solo per la tabella corrente. Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e tutte le relative tabelle discendenti, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(TextWriter, XmlWriteMode, Boolean)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato TextWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su WriteSchema. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
Oggetto TextWriter utilizzato per scrivere il documento.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Esempio
L'applicazione console seguente crea due DataTable istanze, aggiunge ognuna a un DataSetoggetto , crea una DataRelation relazione tra le due tabelle e quindi usa il WriteXml metodo per scrivere i dati contenuti nella tabella padre in un oggetto TextWriter. Nell'esempio viene illustrato il comportamento quando si imposta il writeHierarchy parametro su ognuno dei relativi valori.
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 l'output seguente nella finestra della console:
==============================
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 consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere, il WriteXml metodo salva i dati solo per la tabella corrente. Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e tutte le relative tabelle discendenti, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(String, Boolean)
Scrive il contenuto corrente di DataTable come XML utilizzando il file specificato. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
File in cui scrivere i dati XML.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e tutte le relative tabelle discendenti, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(Stream, Boolean)
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
Public Sub WriteXml (stream As Stream, writeHierarchy As Boolean)
Parametri
- stream
- Stream
Flusso in cui verranno scritti i dati.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Utilizzare il WriteXmlSchema metodo per scrivere lo schema per un oggetto DataTable in un documento XML. Lo schema include definizioni di tabella, relazione e vincolo.
Lo schema XML viene scritto usando lo standard XSD.
Per scrivere i dati in un documento XML, utilizzare il WriteXml metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e tutte le relative tabelle discendenti, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(XmlWriter, XmlWriteMode, Boolean)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto utilizzando l'oggetto DataTable specificato XmlWriter e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su WriteSchema. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e l'intero discendente, le tabelle correlate chiamano il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(String)
Scrive il contenuto corrente di DataTable come XML utilizzando il file specificato.
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
File in cui scrivere i dati XML.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(TextWriter)
Scrive il contenuto corrente di DataTable come XML utilizzando l'oggetto specificato 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
Oggetto TextWriter con cui scrivere il contenuto.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(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)
Parametri
- stream
- Stream
Flusso in cui verranno scritti i dati.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(String, XmlWriteMode, Boolean)
Scrive i dati correnti e, facoltativamente, lo schema per l'oggetto DataTable utilizzando il file specificato e XmlWriteMode. Per scrivere lo schema, impostare il valore per il mode parametro su WriteSchema. Per salvare i dati per la tabella e tutti i relativi discendenti, impostare il writeHierarchy parametro su 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
Nome del file in cui verranno scritti i dati.
- mode
- XmlWriteMode
Uno dei XmlWriteMode valori.
- writeHierarchy
- Boolean
Se true, scrivere il contenuto della tabella corrente e tutti i relativi discendenti. Se false (valore predefinito), scrivere i dati solo per la tabella corrente.
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere, il WriteXml metodo salva i dati solo per la tabella corrente. Se si desidera salvare i dati per la tabella corrente e tutti gli schemi, il WriteXml metodo consente di scrivere solo dati o dati e schemi da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
In genere il WriteXml metodo scrive i dati solo per la tabella corrente. Per scrivere i dati per la tabella corrente e tutte le tabelle discendenti, correlate, chiamare il metodo con il writeHierarchy parametro impostato su true.
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.
Vedi anche
Si applica a
WriteXml(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
Commenti
Il WriteXml metodo consente di scrivere solo dati o entrambi i dati e lo schema da un DataTable oggetto in un documento XML, mentre il WriteXmlSchema metodo scrive solo lo schema. Per scrivere dati e schemi, usare uno degli overload che includono il parametro e impostarne il XmlWriteMode valore su WriteSchema.
Si noti che lo stesso vale rispettivamente per i ReadXml metodi e ReadXmlSchema . Per leggere i dati XML o entrambi gli schemi e i dati in DataTable, usare il ReadXml metodo . Per leggere solo lo schema, usare il ReadXmlSchema metodo .
Note
Verrà generata un'eccezione InvalidOperationException se un tipo di colonna nell'oggetto DataRow da leggere o scritto in implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.