var testfilter = ( from p in test1 where !(from Q in test2 select new {Q.Website,Q.SSN,Q.Class})
Contains(new {p.Website,P.SSN,P.Class}) Select P).ToList();
List<testResults> ResultList = (from R in testfilter
select new testResults
{
Website = R.Website,
SSN = R.SSN,
class = R.class, List1 = 'Yes'
}.ToList()
.Union (from Q in test2
select new testResults
{
Website = Q.Website,
SSN = Q.SSN,class = Q.class, Status = Q.Status,
List2 = 'Yes'
}.ToList();
我必须检查以下列表中的以下条件
1)很少有记录仅存在于 test1 列表
中2)很少有记录仅存在于 test2 列表
中3)两个列表中都存在少量记录,如果两个列表中都存在过滤它们并显示为一条记录。
上述查询适用于小于50k的记录,但我在网格中显示的记录超过200 k。如何使用Except
或其他方法改进查询?
答案 0 :(得分:0)
你可以尝试使用不同的东西,不确定这是解决问题的最佳方法,只是一个建议
List<testResults> distinctResultList = ResultList.Distinct().ToList();