未过滤前:
过滤后(仅会过滤掉完全一样的数据):
代码如下:
datatable dt = this.jsontodatatable("[{\"code\":\"sortid\",\"name\":\"sortid\"},{\"code\":\"sortcode\",\"name\":\"编号\"},
{\"code\":\"solutionname\",\"name\":\"名称\"},{\"code\":\"sortid\",\"name\":\"sortid\"},{\"code\":\"sortid\",\"name\":\"sortid\"},
{\"code\":\"sortid001\",\"name\":\"sortid\"}]");
datatable dtsort = dt.clone();
var query = from t in dt.asenumerable()
group t by new { t1 = t.field<string>("code"),t2 = t.field<string>("name") } into m
select new
{
code = m.key.t1,
name=m.key.t2,
rowcount = m.count()
};
if (query.tolist().count > 0)
{
query.tolist().foreach(q =>
{
datarow dr = dtsort.newrow();
dr["code"] = q.code;
dr["name"] = q.name;
dtsort.rows.add(dr);
});
}
以上就是c# 用linq实现datatable实现重复数据过滤的内容。