Как мне добавить новое DataColumn
к DataTable
объекту, который уже содержит данные?
Псевдокод
//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()
после того, как я добавил новый столбец и значение?Не должно быть
foreach
вместо for !?//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 }
источник
Вот альтернативное решение для уменьшения цикла For / ForEach, это уменьшит время цикла и быстро обновит :)
dt.Columns.Add("MyRow", typeof(System.Int32)); dt.Columns["MyRow"].Expression = "'0'";
источник
Только вы хотите установить параметр значения по умолчанию. Это вызывает третий метод перегрузки.
dt.Columns.Add("MyRow", type(System.Int32),0);
источник
Попробуй это
> 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;
источник