日期:2014-05-17  浏览次数:21095 次

多个DataTable合并去重的问题
程序中有100多个DataTable表,结构如下:

dt.Columns.Add(new DataColumn("name", typeof(string)));
dt.Columns.Add(new DataColumn("createTime", typeof(DateTime)));
dt.Columns.Add(new DataColumn("group", typeof(int)));
dt.Columns.Add(new DataColumn("count", typeof(int)));
dt.Columns.Add(new DataColumn("memo", typeof(string)));

每个表有大约5000条数据
这些表的数据可能有重复的,所以我指定dt.PrimaryKey = new DataColumn[1] { dt.Columns["name"] };
但这100个表执行Merge合并就变得非常慢,去除PrimaryKey后倒是速度快了,但不能去重,不符合要求。

请问有什么方法能更快速的合并数据并去重呢?

------解决方案--------------------
.Distinct()