【发布时间】:2018-05-21 08:31:29
【问题描述】:
我正在编写一些 LINQ 以根据电子邮件获取记录,但是,生成的 SQL 包含一个额外的 IS NULL 条件,它不需要存在,因为我在之前的代码中检查参数值是否为 null将条件添加到查询中。
我的 LINQ 代码是:
if (email != null)
{
query = query.Where(r => r.Email == email);
}
由此产生的SQL条件是:
(([Extent1].[Email] = @p__linq__0) OR (([Extent1].[Email] IS NULL) AND (@p__linq__0 IS NULL)))
(([Extent1].[Email] IS NULL) AND (@p__linq__0 IS NULL))
据我所知,不需要在那里。
有没有办法让 LINQ 忽略它?
【问题讨论】:
标签: c# .net entity-framework linq linq-to-entities