可空整型在LINQ (c#)中没有按预期工作



以下工作如预期(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();

主题。ParentId是一个可空的int类型。这很容易解决,但这让我很困惑。有人能解释一下吗?

你肯定不是第一个观察到这一点的人…有趣的…行为。

http://connect.microsoft.com/data/feedback/details/607404/entity-framework-and-linq-to-sql-incorrectly-handling-nullable-variables

简而言之,很难处理表示null的不同方式。

相关内容

  • 没有找到相关文章

最新更新