码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2014-09-04 18:27:49      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:style   color   os   io   ar   for   数据   代码   sp   

一、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);

                }

            }

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

标签:style   color   os   io   ar   for   数据   代码   sp   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!