首页 > 其他 > 详细

该行已属于另一张表的解决方法

时间:2014-09-04 18:27:49      阅读:233      评论: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);

                }

            }

该行已属于另一张表的解决方法

原文:http://www.cnblogs.com/len0031/p/3956437.html

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