¿Cómo agrego un objeto nuevo DataColumn
a un DataTable
objeto que ya contiene datos?
Pseudocódigo
//call SQL helper class to get initial data
DataTable dt = sql.ExecuteDataTable("sp_MyProc");
dt.Columns.Add("NewColumn", type(System.Int32));
foreach(DataRow row in dr.Rows)
{
//need to set value to NewColumn column
}
dt.AcceptChanges()
después de agregar la nueva columna y valor?¿No debería ser en
foreach
lugar de para?//call SQL helper class to get initial data DataTable dt = sql.ExecuteDataTable("sp_MyProc"); dt.Columns.Add("MyRow", **typeof**(System.Int32)); foreach(DataRow dr in dt.Rows) { //need to set value to MyRow column dr["MyRow"] = 0; // or set it to some other value }
fuente
Aquí hay una solución alternativa para reducir el bucle For / ForEach, esto reduciría el tiempo de bucle y las actualizaciones rápidamente :)
dt.Columns.Add("MyRow", typeof(System.Int32)); dt.Columns["MyRow"].Expression = "'0'";
fuente
Solo usted desea establecer el parámetro de valor predeterminado. Este llamado tercer método de sobrecarga.
dt.Columns.Add("MyRow", type(System.Int32),0);
fuente
Prueba esto
> dt.columns.Add("ColumnName", typeof(Give the type you want)); > dt.Rows[give the row no like or or any no]["Column name in which you want to add data"] = Value;
fuente