c# - 当不应存在任何行时, Entity Framework 返回非空值

标签 c# entity-framework

我有以下查询。如果该行不存在但它始终具有值,我希望 var 为 null。我做错了什么。

var results = dbContext.Users.Where(m => UserName == userName && Password == password).First();

if (results !=null)
     return true;

最佳答案

如果您希望 Where 的结果不返回任何结果,我很惊讶您会看到一个值,因为 First() 会在空集合上引发异常。您可以一起删除 Where 方法并将谓词放在 FirstOrDefault 中以使其更清晰,如下所示:

var results = dbContext.Users.FirstOrDefault(m => UserName == userName && Password == password);

关于c# - 当不应存在任何行时, Entity Framework 返回非空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29607872/

相关文章:

c# - 为异步调用保存的通用参数在哪里?在哪里可以找到它的名称或其他信息?

c# - 从 Uri 获取单个查询参数

c# - 更改 IsolatedStorage 位置

c# - 声明一个同时支持 Void 和 IEnumerator 的函数

c# - 将 Entity Framework 类型传递给泛型方法

c# - C# 数据库访问的建议

c# - 单元测试获取包含 'Value cannot be null'

c# - 如何指定配置类型的名称?

entity-framework - 如何更改 EntityFrameworkCore 迁移的存储位置?

c# - Windows 服务看不到文件