DataTable.WriteXml Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Escreve o conteúdo atual do DataTable como XML.
Sobrecargas
| Name | Description |
|---|---|
| WriteXml(TextWriter, Boolean) |
Escreve o conteúdo atual do DataTable como XML usando o especificado TextWriter. Para guardar os dados da tabela e de todos os seus descendentes, defina o |
| WriteXml(TextWriter, XmlWriteMode) |
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados TextWriter e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(String, XmlWriteMode) |
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable usando o ficheiro especificado e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(Stream, XmlWriteMode) |
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable ficheiro especificado usando o ficheiro especificado XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(XmlWriter, Boolean) |
Escreve o conteúdo atual do DataTable como XML usando o especificado XmlWriter. |
| WriteXml(XmlWriter, XmlWriteMode) |
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados XmlWriter e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(Stream, XmlWriteMode, Boolean) |
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable ficheiro especificado usando o ficheiro especificado XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(TextWriter, XmlWriteMode, Boolean) |
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados TextWriter e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(String, Boolean) |
Escreve o conteúdo atual do DataTable como XML usando o ficheiro especificado. Para guardar os dados da tabela e de todos os seus descendentes, defina o |
| WriteXml(Stream, Boolean) |
Escreve o conteúdo atual do DataTable como XML usando o especificado Stream. Para guardar os dados da tabela e de todos os seus descendentes, defina o |
| WriteXml(XmlWriter, XmlWriteMode, Boolean) |
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados XmlWriter e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(String) |
Escreve o conteúdo atual do DataTable como XML usando o ficheiro especificado. |
| WriteXml(TextWriter) |
Escreve o conteúdo atual do DataTable como XML usando o especificado TextWriter. |
| WriteXml(Stream) |
Escreve o conteúdo atual do DataTable como XML usando o especificado Stream. |
| WriteXml(String, XmlWriteMode, Boolean) |
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable usando o ficheiro especificado e XmlWriteMode. Para escrever o esquema, defina o valor do |
| WriteXml(XmlWriter) |
Escreve o conteúdo atual do DataTable como XML usando o especificado XmlWriter. |
Exemplos
A aplicação de consola seguinte cria duas DataTable instâncias, adiciona cada uma a um DataSet, cria um DataRelation relacionando as duas tabelas e depois usa o WriteXml método para escrever os dados contidos na tabela pai para um TextWriter. O exemplo demonstra o comportamento ao definir o writeHierarchy parâmetro para cada um dos seus valores.
Note
Este exemplo mostra como usar uma das versões sobrecarregadas do WriteXml. Para outros exemplos que possam estar disponíveis, veja os tópicos individuais de sobrecarga.
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
O exemplo exibe a seguinte saída na janela do 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>
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
WriteXml(TextWriter, Boolean)
Escreve o conteúdo atual do DataTable como XML usando o especificado TextWriter. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- writer
- TextWriter
O TextWriter com que escrever o conteúdo.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Exemplos
A aplicação de consola seguinte cria duas DataTable instâncias, adiciona cada uma a um DataSet, cria um DataRelation relacionando as duas tabelas e depois usa o WriteXml método para escrever os dados contidos na tabela pai para um TextWriter. O exemplo demonstra o comportamento ao definir o writeHierarchy parâmetro para 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
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados para a tabela atual e todas as suas tabelas descendentes relacionadas, chame o método com o writeHierarchy parâmetro definido como true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(TextWriter, XmlWriteMode)
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados TextWriter e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para 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)
Parâmetros
- writer
- TextWriter
Eles TextWriter usaram para escrever o documento.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(String, XmlWriteMode)
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable usando o ficheiro especificado e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para WriteSchema.
public:
void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode);
public void WriteXml(string fileName, System.Data.XmlWriteMode mode);
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (fileName As String, mode As XmlWriteMode)
Parâmetros
- fileName
- String
O nome do ficheiro onde os dados serão escritos.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(Stream, XmlWriteMode)
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable ficheiro especificado usando o ficheiro especificado XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para 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)
Parâmetros
- stream
- Stream
O fluxo para onde os dados serão escritos.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se 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)
Parâmetros
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados para a tabela atual e todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido em true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(XmlWriter, XmlWriteMode)
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados XmlWriter e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para 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)
Parâmetros
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(Stream, XmlWriteMode, Boolean)
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable ficheiro especificado usando o ficheiro especificado XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para WriteSchema. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- stream
- Stream
O fluxo para onde os dados serão escritos.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método guarda dados apenas para a tabela atual. O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados da tabela atual e de todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido como true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(TextWriter, XmlWriteMode, Boolean)
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados TextWriter e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para WriteSchema. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- writer
- TextWriter
Eles TextWriter usaram para escrever o documento.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Exemplos
A aplicação de consola seguinte cria duas DataTable instâncias, adiciona cada uma a um DataSet, cria um DataRelation relacionando as duas tabelas e depois usa o WriteXml método para escrever os dados contidos na tabela pai para um TextWriter. O exemplo demonstra o comportamento ao definir o writeHierarchy parâmetro para cada um dos seus valores.
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
O exemplo exibe a seguinte saída na janela do 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>
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método guarda dados apenas para a tabela atual. O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados da tabela atual e de todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido como true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(String, Boolean)
Escreve o conteúdo atual do DataTable como XML usando o ficheiro especificado. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- fileName
- String
O ficheiro onde escrever os dados XML.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados da tabela atual e de todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido como true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se 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)
Parâmetros
- stream
- Stream
O fluxo para onde os dados serão escritos.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
Use o WriteXmlSchema método para escrever o esquema para DataTable um documento XML. O esquema inclui definições de tabela, relação e restrições.
O esquema XML é escrito usando o padrão XSD.
Para escrever os dados num documento XML, use o WriteXml método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados da tabela atual e de todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido como true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(XmlWriter, XmlWriteMode, Boolean)
Escreve os dados atuais, e opcionalmente o esquema, para o DataTable usando os especificados XmlWriter e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para WriteSchema. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados para a tabela atual e todas as suas tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido em true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(String)
Escreve o conteúdo atual do DataTable como XML usando o ficheiro especificado.
public:
void WriteXml(System::String ^ fileName);
public void WriteXml(string fileName);
member this.WriteXml : string -> unit
Public Sub WriteXml (fileName As String)
Parâmetros
- fileName
- String
O ficheiro onde escrever os dados XML.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(TextWriter)
Escreve o conteúdo atual do DataTable como XML usando o especificado 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)
Parâmetros
- writer
- TextWriter
O TextWriter com que escrever o conteúdo.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se 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)
Parâmetros
- stream
- Stream
O fluxo para onde os dados serão escritos.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use um dos sobrecarregamentos que inclua o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se a
WriteXml(String, XmlWriteMode, Boolean)
Escreve os dados atuais e, opcionalmente, o esquema, para o DataTable usando o ficheiro especificado e XmlWriteMode. Para escrever o esquema, defina o valor do mode parâmetro para WriteSchema. Para guardar os dados da tabela e de todos os seus descendentes, defina o writeHierarchy parâmetro para 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)
Parâmetros
- fileName
- String
O nome do ficheiro onde os dados serão escritos.
- mode
- XmlWriteMode
Um dos XmlWriteMode valores.
- writeHierarchy
- Boolean
Se true, escreva o conteúdo da tabela atual e de todos os seus descendentes. Se false (o valor padrão), escreva os dados apenas para a tabela atual.
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método guarda dados apenas para a tabela atual. Se quiser guardar os dados para a tabela atual e para todo o esquema, o WriteXml método fornece uma forma de escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Normalmente, o WriteXml método escreve os dados apenas para a tabela atual. Para escrever os dados da tabela atual e de todas as tabelas descendentes relacionadas, chama o método com o writeHierarchy parâmetro definido em true.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.
Ver também
Aplica-se 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)
Parâmetros
Observações
O WriteXml método permite escrever apenas dados, ou ambos os dados e o esquema de a DataTable num documento XML, enquanto o WriteXmlSchema método escreve apenas o esquema. Para escrever tanto dados como esquema, use uma das sobrecargas que incluam o XmlWriteMode parâmetro e defina o seu valor para WriteSchema.
Note-se que o mesmo se aplica aos ReadXml métodos e, ReadXmlSchema respetivamente. Para ler dados XML, ou tanto o esquema como os dados no DataTable, use o ReadXml método. Para ler apenas o esquema, use o ReadXmlSchema método.
Note
Um InvalidOperationException será lançado se um tipo de coluna em DataRow o que está a ser lido ou escrito em implementa IDynamicMetaObjectProvider e não implementar IXmlSerializable.