1. 我开始开发程序时,很多问题考虑不周期,不断的在改进中
最开始我的写法,创建一个DataTable 的Columns,采用语句 dt2.Columns.Add("ID");
这种办法在使用数据库表的栏位之时并不适用,可以采用select * from 表 where 1=2 的方式来得到 DataTable 的Columns,这里的* 可以更具自己的需要进行列查询。
2.在给DataTable增加数据的时候,喜欢采用
dt2.Rows.Add("123", "Soar"); 的方式,此方法有个问题,就是如果改为dt2.Rows.Add("Soar", "123"); 数据一样可以保存成功,但是结果却并不正确。
还有就是如果需要增加列值,那么修改代码会比较痛苦吧!
改变了方式为循环DataRow进行赋值,举例如下:
//把2表的值循环放入1表中 DataTable dt1 = new DataTable(); dt1.Columns.Add("Name"); dt1.Columns.Add("ID"); DataTable dt2 = new DataTable(); dt2.Columns.Add("ID"); dt2.Columns.Add("Name"); dt2.Rows.Add("123", "Soar"); DataRow x1 = dt1.NewRow(); DataRow x2 = dt2.Rows[0]; foreach (var col in dt2.Columns) { var c = col.ToString(); x1[c] = x2[c]; } dt1.Rows.Add(x1);