相关疑难解决方法(0)

LINQ在SQL语句中生成额外的IS NULL条件

我正在写一些LINQ来根据电子邮件获取记录,但是,生成的SQL包含一个附加IS NULL条件,不需要在那里,因为我在将条件添加到代码之前检查代码中的null参数值查询.

我的LINQ代码是:

if (email != null)
{
    query = query.Where(r => r.Email == email);
}
Run Code Online (Sandbox Code Playgroud)

由此生成的SQL条件是:

(([Extent1].[Email] = @p__linq__0) OR (([Extent1].[Email] IS NULL) AND (@p__linq__0 IS NULL)))
Run Code Online (Sandbox Code Playgroud)

(([Extent1].[Email] IS NULL) AND (@p__linq__0 IS NULL))
Run Code Online (Sandbox Code Playgroud)

就我所见,我不需要在那里.

有没有办法让LINQ省略它?

.net c# linq linq-to-entities entity-framework

15
推荐指数
1
解决办法
1112
查看次数

标签 统计

.net ×1

c# ×1

entity-framework ×1

linq ×1

linq-to-entities ×1