首页 > Windows开发 > 详细

C#两个DataTable拷贝问题:该行已经属于另一个表的解决方法

时间:2016-05-18 09:06:50      阅读:303      评论:0      收藏:0      [点我收藏+]

一、DataTable.Rows.Add(DataRow.ItemArray);

二、DataTable.ImportRow(DataRow)

三、设置DataTable的tablename,然后.Rows.Add

第一种方法在项目中用到,确实好用!两种方式都可以自己选择吧,没有什么好坏

----------------------------------------------------------------------------------------------------------------

要把数据从一个DataTable复制到另一个DataTable,执行结果出现c#错误:

该行已经属于另一个表。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ArgumentException: 该行已经属于另一个表。

错误代码如下:


DataTable sourceTable = null;

sourceTable = GetTest(tableName);

 

if (sourceTable == null)

{

return null;

}

DataTable retTable = new DataTable();

foreach (DataRow dr in sourceTable.Rows)

{

if (dr["主键"].ToString() != "")

{

retTable.Rows.Add(dr);

}

}

后经修改,调试通过,修改后代码如下:


      DataTable sourceTable = null;

sourceTable = GetTest(tableName);

if (sourceTable == null)

{

return null;

}

DataTable retTable = new DataTable();

foreach (DataRow dr in sourceTable.Rows)

{

if (dr["主键"].ToString() != "")

{

retTable.Rows.Add(dr.ItemArray);

}

}

 

C#两个DataTable拷贝问题:该行已经属于另一个表的解决方法

原文:http://www.cnblogs.com/spring_wang/p/5503894.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!