c#中DataTable的拷贝复制

一、背景

  有时需要对DataTable进行数据变更操作,但是需要保存原本的DataTable作为参考可返回的,因此需要拷贝DataTable生成新的对象。

二、实现

  原本是想用for循环将原DataTable的值用Add的方法添加到新DataTable中,实际操作中发现使用此方法提示对应的datarow属于原DataTable而不属于新DataTable。至此需要新的来操作。
  这里需要注意的是Copy()和Clone()两个方法,这两个方法实现的效果是不一样的。首先是Copy(),该方法是拷贝对应的的结构和数据生成新的DataTable,而Clone()则只是复制对应的结构并不复制数据生成新的DataTable。如果只是复制不进行其他操作,Copy()是完全够用的;但需要复制的时候进行其他赋值操作,相信Clone()更加灵活。

DataTable table1 = dt.Copy();
DataTable table2 = dt.Clone();

  如果使用Clone()这里提供两个方法可以将原DataTable的行数据复制到新DataTable中,具体如下:

dt.ImportRow(datarow);// 将行数据导入到新DataTable中
dt.Add(datarow.ItemArray);// 将结构相同的添加到新Table中

  如上就是DataTable的简单复制,记录以便后面的查找

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值