我有两个列表。想要比较它们
foreach (SQLFrameWorkEntity item in oListParent)
{
foreach (SQLFrameWorkEntity item2 in oList)
{
if (item.TableNumber == item2.ReferenceNumber
&& item.TableNumber!=item2.TableNumber)
{
oListReferenceTable.Add(item2);
}
}
}
我尝试在linq中实现这个结果,但是下面的语法并没有给我所需的输出。
var r = oListParent.Select(p =>
oList.Select(q => q.ReferenceNumber == p.TableNumber))
.ToList();
帮助我更正上面的linq语法来实现所需的输出 如果有查询请问。请提前谢谢
答案 0 :(得分:3)
var r = oList.Where(x => oListParent.Any(y => y.TableNumber == x.ReferenceNumber &&
y.TableNumber != x.TableNumber))
.ToList()
答案 1 :(得分:2)
var result = from item in oListParent
join item2 in oList on item.TableNumber equals item2.ReferenceNumber
where item.TableNumber != item2.TableNumber
select item2;