以下按预期工作(LINQ to Entities):
var topics = (from t in ctx.Topics where t.SubjectId == subjectId && t.ParentId == null select new { t.Title, t.Id }).ToList();
但是,以下内容不会返回任何内容:
int? parent = null;
var topics = (from t in ctx.Topics where t.SubjectId == subjectId && t.ParentId == parent select new { t.Title, t.Id }).ToList();
Topic.ParentId是一个可以为空的int。这很容易解决,但这让我很困惑。任何人都可以放弃任何光明吗?
答案 0 :(得分:4)
你绝对不是第一个观察这个......有趣......行为的人。
简而言之,很难处理表达null的不同方式。