以下工作正常(LINQ到实体):

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是可为null的int。这很容易解决,但这使我感到困惑。谁能阐明任何想法?

最佳答案

您绝对不是第一个观察到这种有趣行为的人。 ta田
简而言之,很难处理表达空值的不同方法。

10-08 14:48