目前我正在使用带有单个字段的 Group-By 从可观察集合中过滤我的重复记录。问题1:
我当前的代码来过滤记录
if (param.ToString() == "Name")
duplicates = AllCollection != null
? AllCollection .GroupBy(g => g.Name).Where(w => w.Count() > 1).OrderBy(o => o.Key).Select(s => s).ToList() :
Collection.GroupBy(g => g.Name).Where(w => w.Count() > 1).OrderBy(o => o.Key).Select(s => s).ToList();
else if (param.ToString() == "Company")
duplicates = AllCollection != null
? AllCollection .GroupBy(g => g.CompanyName).Where(w => w.Count() > 1).OrderBy(o => o.Key).Select(s => s).ToList() :
Collection.GroupBy(g => g.CompanyName).Where(w => w.Count() > 1).OrderBy(o => o.Key).Select(s => s).ToList();
但是使用这个我需要对所有字段使用 else if 进行过滤。不使用这个大代码的任何其他方法..
问题2:
我还想过滤具有多个字段的记录,例如通过名称和公司名称,结果将是具有相同名称和公司名称的记录。那么我可以将哪个 Linq 表达式传递给 Group-By 子句?
提前致谢。