Wie füge ich DataColumn
einem DataTable
Objekt, das bereits Daten enthält , ein neues hinzu ?
PseudoCode
//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()
nachdem ich die neue Spalte und den neuen Wert hinzugefügt habe?Sollte es nicht
foreach
statt für sein!?//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 }
quelle
Hier ist eine alternative Lösung, um die For / ForEach-Schleife zu reduzieren. Dies würde die Schleifenzeit reduzieren und schnell aktualisieren :)
dt.Columns.Add("MyRow", typeof(System.Int32)); dt.Columns["MyRow"].Expression = "'0'";
quelle
Nur Sie möchten den Standardwertparameter festlegen. Diese aufrufende dritte Überladungsmethode.
dt.Columns.Add("MyRow", type(System.Int32),0);
quelle
Versuche dies
> 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;
quelle