Crear DataTable en C#
-
Crear tabla de datos con la clase
DataTable
enC#
-
Agregar filas a la tabla de datos en
C#
-
Exportar datos de la tabla a XML en
C#
-
Exportar estructura de tabla de datos a XML en
C#
Este tutorial discutirá los métodos para crear y llenar una tabla de datos en C#.
Crear tabla de datos con la clase DataTable
en C#
La clase DataTable
se utiliza para crear una tabla de datos en C#. Una tabla de datos representa una tabla con datos relacionales en C#. Cuando creamos por primera vez una tabla de datos con la clase DataTable
, no tiene un esquema específico. Tenemos que crear y agregar un objeto de la clase DataColumn
para especificar la estructura de la tabla de datos. Podemos agregar el objeto de la clase DataColumn
al objeto de la clase DataTable
con la función DataTable.Columns.Add()
en 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);
}
}
}
En el código anterior, creamos la tabla de datos workTable
con el nombre Customers
y dos columnas diferentes, column1
y column2
, con los nombres Column1
y Column2
, respectivamente. Especificamos el esquema de la workTable
añadiéndole ambas columnas. Ahora podemos agregar datos a nuestra tabla en forma de filas.
Agregar filas a la tabla de datos en C#
Para agregar una fila a nuestra tabla, tenemos que crear un objeto de la clase DataRow
. La clase DataRow
define una nueva fila para agregar datos a nuestra tabla en C#. Podemos agregar el objeto de la clase DataRow
al objeto de la clase DataTable
con la función DataTable.Row.Add()
en C#. El siguiente ejemplo de código nos muestra cómo podemos agregar datos a nuestra tabla con la clase DataRow
en 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);
}
}
}
En el código anterior, inicializamos la instancia row1
de la clase DataRow
con la función workTable.NewRow()
. Agregamos datos para ambas columnas en la row1
y agregamos row1
a la workTable
con la función workTable.Rows.Add(row1)
en C#.
También podemos agregar una nueva fila a nuestra tabla con el siguiente enfoque.
object[] o = { "object value1", "object value2" };
workTable.Rows.Add(o);
En el código anterior, agregamos una nueva fila a la tabla workTable
sin crear una instancia de la clase DataRow
. Otro enfoque que se puede utilizar para insertar una nueva fila en nuestra tabla en C# se muestra a continuación.
workTable.Rows.Add("direct value1", "direct value2");
En el código anterior, agregamos valores directamente a una nueva fila en la tabla workTable
sin siquiera declarar un array de objetos.
Exportar datos de la tabla a XML en C#
Ahora que hemos creado nuestra tabla con la clase DataTable
, definido su estructura con la clase DataColumn
y agregado varias filas a nuestra tabla, ahora podemos mostrar nuestra tabla. Podemos exportar toda nuestra tabla a un archivo xml con la función DataTable.WriteXml()
en C#. La función DataTable.WriteXml(path)
se utiliza para escribir todos los datos de nuestra tabla en un archivo xml en la path
. El siguiente ejemplo de código nos muestra cómo podemos escribir los datos de nuestra tabla en un archivo xml con la función DataTable.WriteXml()
en 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");
}
}
}
En el código anterior, exportamos todos los datos dentro de la tabla workTable
al archivo xml workTable.xml
con la función workTable.WriteXml("workTable.xml")
en C#. El contenido del archivo workTable.xml
se proporciona a continuación.
<?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 estructura de tabla de datos a XML en C#
Por el contrario, también podemos exportar solo el esquema o la estructura de nuestra tabla a un archivo xml en C#. La función DataTable.WriteXmlSchema(path)
se utiliza para escribir la estructura de nuestra tabla de datos en un archivo xml en la path
. El siguiente ejemplo de código nos muestra cómo podemos escribir la estructura de nuestra tabla en un archivo xml con la función DataTable.WriteXmlSchema(path)
en 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");
}
}
}
En el código anterior, exportamos la estructura de la tabla workTable
al archivo xml workTableSchema.xml
con la función workTable.WriteXmlSchema("workTableSchema.xml")
en C#. El contenido del archivo workTable.Schema.xml
se muestra a continuación.
<?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