首页 > 其他 > 详细

C#把一个datatable中的数据复制到另一张datatable

时间:2014-02-10 18:47:32      阅读:353      评论:0      收藏:0      [点我收藏+]
实际开发中往往需要把一个dataTable中的数据根据条件过滤,然后把新数据赋给另外一张表(即返回过滤后的数据),
比如:有一个datatable dt;另一个datatable dt1;
DataRow dr=dt.select("id=1");
然后
dt1.Rows.Add(dr[0]);
但是这时会提示错误信息:这一行数据已经属于其他表,本节内容就是讲解如何把一个dataTable中的数据赋给新的dataTable
代码如下:
bubuko.com,布布扣
/// <summary>       
/// 执行DataTable中的查询返回新的DataTable        
/// </summary>        
/// <param name="dt">源数据DataTable</param>        
/// <param name="condition">查询条件</param>       
/// <returns></returns>        
public static DataTable GetNewDataTable(DataTable dt, string condition)        
   {          
     DataTable newdt = new DataTable();            
     try            
        {                
           newdt = dt.Clone();                
           DataRow[] dr = dt.Select(condition); // 克隆dt的结构,包括所有dt架构和约束,并无数据       
           for (int i = 0; i < dr.Length; i++)                
             {                    
              newdt.ImportRow((DataRow)dr[i]);                
            }               
          return newdt;//返回的查询结果           
       }            
     catch (Exception ex)           
       {                
           MessageBox.Show(ex.Message);                
           return newdt;            
       }     
  } 
bubuko.com,布布扣


其中 newdt.ImportRow((DataRow)dr[i]); 也可以换成newdt.Rows.Add(dr[i].ItemArray);

C#把一个datatable中的数据复制到另一张datatable

原文:http://www.cnblogs.com/wangjianhui008/p/3543133.html

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