Crie DataTable em C#
-
Crie uma tabela de dados com a classe
DataTable
emC#
-
Adicionar linhas à tabela de dados em
C#
-
Exportar dados da tabela de dados para XML em
C#
-
Exportar estrutura da tabela de dados para XML em
C#
Este tutorial discutirá os métodos de criação e preenchimento de uma tabela de dados em C#.
Crie uma tabela de dados com a classe DataTable
em C#
A classe DataTable
é usada para criar uma tabela de dados em C#. Uma tabela de dados representa uma tabela com dados relacionais em C#. Quando criamos pela primeira vez uma tabela de dados com a classe DataTable
, ela não possui um esquema especificado. Temos que criar e adicionar um objeto da classe DataColumn
para especificar a estrutura da tabela de dados. Podemos adicionar o objeto da classe DataColumn
ao objeto da classe DataTable
com a função DataTable.Columns.Add()
em C#.
using System.Data;
namespace data_table {
class Program {
static void Main(string[] args) {
DataTable workTable = new DataTable("Customers");
DataColumn column1 = new DataColumn("Column1");
DataColumn column2 = new DataColumn("Column2");
workTable.Columns.Add(column1);
workTable.Columns.Add(column2);
}
}
}
No código acima, criamos a tabela de dados workTable
com o nome Customers
e duas colunas diferentes, column1
e column2
, tendo os nomes Column1
e Column2
, respectivamente. Especificamos o esquema da workTable
adicionando ambas as colunas a ela. Agora podemos adicionar dados à nossa tabela na forma de linhas.
Adicionar linhas à tabela de dados em C#
Para adicionar uma linha à nossa tabela, temos que criar um objeto da classe DataRow
. A classe DataRow
define uma nova linha para adicionar dados à nossa tabela em C#. Podemos adicionar o objeto da classe DataRow
ao objeto da classe DataTable
com a função DataTable.Row.Add()
em C#. O exemplo de código a seguir nos mostra como podemos adicionar dados à nossa tabela com a classe DataRow
em C#.
using System.Data;
namespace data_table {
class Program {
static void Main(string[] args) {
DataTable workTable = new DataTable("Customers");
DataColumn column1 = new DataColumn("Column1");
DataColumn column2 = new DataColumn("Column2");
workTable.Columns.Add(column1);
workTable.Columns.Add(column2);
DataRow row1 = workTable.NewRow();
row1["Column1"] = "value1";
row1["Column2"] = "value2";
workTable.Rows.Add(row1);
}
}
}
No código acima, inicializamos a instância row1
da classe DataRow
com a função workTable.NewRow()
. Adicionamos dados para ambas as colunas na linha1
e adicionamos linha1
à workTable
com a função workTable.Rows.Add(row1)
em C#.
Também podemos adicionar uma nova linha à nossa tabela com a seguinte abordagem.
object[] o = { "object value1", "object value2" };
workTable.Rows.Add(o);
No código acima, adicionamos uma nova linha à tabela workTable
sem criar uma instância da classe DataRow
. Outra abordagem que pode ser usada para inserir uma nova linha em nossa tabela em C# é fornecida a seguir.
workTable.Rows.Add("direct value1", "direct value2");
No código acima, adicionamos valores diretamente a uma nova linha na tabela workTable
, mesmo sem declarar um array de objetos.
Exportar dados da tabela de dados para XML em C#
Agora que criamos nossa tabela com a classe DataTable
, definimos sua estrutura com a classe DataColumn
e adicionamos várias linhas à nossa tabela, podemos agora exibir nossa tabela. Podemos exportar nossa tabela inteira para um arquivo xml com a função DataTable.WriteXml()
em C#. A DataTable.WriteXml(path)
função é usada para escrever todos os dados de nossa tabela em um arquivo xml no path
. O exemplo de código a seguir nos mostra como podemos escrever os dados da nossa tabela em um arquivo xml com a função DataTable.WriteXml()
em C#.
using System.Data;
namespace data_table {
class Program {
static void Main(string[] args) {
DataTable workTable = new DataTable("Customers");
DataColumn column1 = new DataColumn("Column1");
DataColumn column2 = new DataColumn("Column2");
workTable.Columns.Add(column1);
workTable.Columns.Add(column2);
DataRow row1 = workTable.NewRow();
row1["Column1"] = "value1";
row1["Column2"] = "value2";
workTable.Rows.Add(row1);
object[] o = { "object value1", "object value2" };
workTable.Rows.Add(o);
workTable.Rows.Add("direct value1", "direct value2");
workTable.WriteXml("workTable.xml");
}
}
}
No código acima, exportamos todos os dados dentro da tabela workTable
para o arquivo xml workTable.xml
com a função workTable.WriteXml("workTable.xml")
em C#. O conteúdo do arquivo workTable.xml
é fornecido a seguir.
<?xml version="1.0" standalone="yes"?>
<DocumentElement>
<Customers>
<Column1>value1</Column1>
<Column2>value2</Column2>
</Customers>
<Customers>
<Column1>object value1</Column1>
<Column2>object value2</Column2>
</Customers>
<Customers>
<Column1>direct value1</Column1>
<Column2>direct value2</Column2>
</Customers>
</DocumentElement>
Exportar estrutura da tabela de dados para XML em C#
Por outro lado, também podemos exportar apenas o esquema ou estrutura de nossa tabela para um arquivo xml em C#. A função DataTable.WriteXmlSchema(path)
é usada para escrever a estrutura de nossa tabela de dados em um arquivo xml no path
. O exemplo de código a seguir nos mostra como podemos escrever a estrutura de nossa tabela em um arquivo xml com a função DataTable.WriteXmlSchema(path)
em C#.
using System.Data;
namespace data_table {
class Program {
static void Main(string[] args) {
DataTable workTable = new DataTable("Customers");
DataColumn column1 = new DataColumn("Column1");
DataColumn column2 = new DataColumn("Column2");
workTable.Columns.Add(column1);
workTable.Columns.Add(column2);
DataRow row1 = workTable.NewRow();
row1["Column1"] = "value1";
row1["Column2"] = "value2";
workTable.Rows.Add(row1);
object[] o = { "object value1", "object value2" };
workTable.Rows.Add(o);
workTable.Rows.Add("direct value1", "direct value2");
workTable.WriteXml("workTable.xml");
workTable.WriteXmlSchema("workTableSchema.xml");
}
}
}
No código acima, exportamos a estrutura da tabela workTable
para o arquivo xml workTableSchema.xml
com a função workTable.WriteXmlSchema("workTableSchema.xml")
em C#. O conteúdo do arquivo workTable.Schema.xml
é fornecido a seguir.
<?xml version="1.0" standalone="yes"?>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Customers" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Customers">
<xs:complexType>
<xs:sequence>
<xs:element name="Column1" type="xs:string" minOccurs="0" />
<xs:element name="Column2" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn