c# - obtener - Cómo cambiar la columna tipo datatable
leer datatable c# (1)
No es posible cambiar el tipo de datos de la tabla de datos después de completarlos, pero uno de los trabajos abunda para este es el datatable clonado y el tipo de cambio.
Primera forma
//clone datatable
DataTable dtCloned = dt.Clone();
//change data type of column
dtCloned.Columns[0].DataType = typeof(Int32);
//import row to cloned datatable
foreach (DataRow row in dt.Rows)
{
dtCloned.ImportRow(row);
}
segunda manera
y otra forma de hacerlo es así, primero complete el esquema - luego cambie el tipo de datos de la columna y luego complete el archivo datable
adapter.FillSchema(table, SchemaType.Source);
table.Columns[0].DataType = typeof (Int32);
adapter.Fill(table);
tercera manera
una forma más de hacerlo es
System.Data.DataTable dt = new System.Data.DataTable();
dt.Columns.Add("Col1", typeof(int));
dt.Rows.Add(1);
System.Data.DataTable dt2 = new System.Data.DataTable();
dt2.Columns.Add("Col1", typeof(string));
dt2.Load(dt.CreateDataReader(), System.Data.LoadOption.OverwriteChanges);
Posible duplicado:
Cómo convertir el tipo de columna DataTable?
¿Cómo podemos cambiar el tipo de columna de tabla de datos si la tabla ya tiene valor?