当我在 LinqPad 中使用以下 Linq 查询时,会返回 25 个结果:
var result = (from l in LandlordPreferences
where l.Name == "Wants Student" && l.IsSelected == true
join t in Tenants on l.IsSelected equals t.IsStudent
select new { Tenant = t});
result.Dump();
当我添加.Distinct()
到最后时,我只返回 5 个结果,所以,我猜当使用上述方法时,我会得到每个结果的 5 个实例。
我是 Linq 的新手,所以我想知道这是否是因为查询构建不佳?还是这是 Linq 一直以来的行为方式?当然不是 - 如果我返回 500 行.Distinct()
,这是否意味着没有它返回 2,500?这会影响性能吗?