求一个高效对比算法,比较两个datatable数据
答案:1 悬赏:50 手机版
解决时间 2021-05-06 04:43
- 提问者网友:焚苦与心
- 2021-05-05 04:19
求一个高效对比算法,比较两个datatable数据
最佳答案
- 五星知识达人网友:雾月
- 2021-05-05 04:34
用linq来实现,先定义两个dt,这个可以换成你程序中的
DataTable dt1 = new DataTable(); //第一个datatable
DataTable dt2 = new DataTable(); //第二个datatable
思路:
1.根据某个字段,找到dt1和dt2中重复的数据集合(我这里用的是Id,只要id相同我就认为是重复的数据)
2.在dt1中减去上面找到的重复的集合,就是在dt1中取重复数据的补集。
var dt3 = from r in dt1.AsEnumerable() where !(from rr in dt2.AsEnumerable() select rr.Field("Id")).Contains(r.Field("Id")) select r;追问两表列数可能会有不同,linq不是只有在相同表结构的情况下才可以吗
DataTable dt1 = new DataTable(); //第一个datatable
DataTable dt2 = new DataTable(); //第二个datatable
思路:
1.根据某个字段,找到dt1和dt2中重复的数据集合(我这里用的是Id,只要id相同我就认为是重复的数据)
2.在dt1中减去上面找到的重复的集合,就是在dt1中取重复数据的补集。
var dt3 = from r in dt1.AsEnumerable() where !(from rr in dt2.AsEnumerable() select rr.Field
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯