懒得解释了,直接用dt.Rows.Add(dt.Rows[0])这个方法的话,会报此行已在此表中,哪怕你复制到别的表,也会报该行已属于别的表,那么就用如下的方法一和方法二来解决吧不要看我那夸张的datatable测试表,我无聊,加那么多列。。。
DataTable dt = new DataTable();
dt.Columns.Add("c1", typeof(string));
dt.Columns.Add("c2", typeof(string));
dt.Columns.Add("c3", typeof(string));
dt.Columns.Add("c4", typeof(string));
dt.Columns.Add("c5", typeof(string));
dt.Columns.Add("c6", typeof(string));
dt.Columns.Add("c7", typeof(string));
dt.Columns.Add("c8", typeof(string));
dt.Columns.Add("c9", typeof(string));
dt.Columns.Add("c10", typeof(string));
dt.Columns.Add("c11", typeof(string));
dt.Rows.Add("bbb", "bbb", "bbb", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");
//此处才是示例
DataRow dr = dt.NewRow();
//方法1
//dt.ImportRow(dt.Rows[0]);
//方法2
dr.ItemArray = dt.Rows[0].ItemArray;
dt.Rows.Add(dr);
dataGridView1.DataSource = dt;
- 本文标题: ASP.NET之datatable复制数据
- 文章分类:【.NET/Web】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.