我正在写一些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省略它?