DataTable数据修改,换列


增加列             DataTable table= new DataTable();             table.Columns.Add("ID", typeof(int));             table.Columns.Add("lName", typeof(string)); 删除列 table.Columns.Remove("Name"); 修改列名             dt.Columns["num"].ColumnName = "搜索量";    增加行 DataRow dr = dataTable.NewRow();  dr["columnName1"] = value1; dr["columnName2"]="value2"; dr["columnName3"] ="value3"; dataTable.Rows.Add(dr);  

 

DataTable由DataRow行组成。

 

获取第四行:DataRow drEmployee = dtEmployees.Rows[3];

DataRow类为了在编辑数据时挂起和恢复数据行的状态提供了3个方法:BeginEdit、EndEdit和CancelEdit方法。当编辑数据时,调用BeginEdit可以挂起任何事件(或异常),使用Items集合指定要修改的数据的列名和新值;使用EndEdit重新恢复任何事件(或异常);使用CancelEdit则可以回滚任何更改和重新激活任何事件或异常。
drEmployee.BeginEdit();  
drEmployee("EmpName") = "John";
drEmployee("Title")="Sales";
drEmployee.EndEdit();

 

遍历:foreach (DataRow item in dt.Rows)

验证:if (item["item"] is DBNull || !StringUtil.HasText(item["tag"])) continue; //item["tag"]是每一行中某个数据。

(DBNull表示数据库无相关数据,StringUtil.HasText只在null,“ ”,“”时为false

 

修改序列

把列名为"MONEY"的列移至第5列
DataTable.Columns["MONEY"].SetOrdinal[4];