两个linq查询结果的差异
本文关键字:结果 linq 查询 两个 | 更新日期: 2023-09-27 18:17:41
我想知道为什么这两个查询返回不同的结果。
这个查询返回6:
var a = (from belg in contextArchive.Belgeler
join zrf in contextArchive.Zarflar on belg.Parent_ID equals zrf.ID
where belg.RefETTN == this.BelgeETTN
select new { zrf }).Count();
而这个查询返回3:
var b = (from belg in contextArchive.Belgeler
join zrf in contextArchive.Zarflar on belg.Parent_ID equals zrf.ID
where belg.RefETTN == this.BelgeETTN
select new { zrf }).ToList();
countKabulRed = b.Count();
我相信b
中有一些空值。a
和b
的不同之处是,a
使用SQL的COUNT忽略空值,而b
的Count()
包括空值和非空值。