gpt4 book ai didi

.net - Entity Framework 4 Single() vs First() vs FirstOrDefault()

转载 作者:行者123 更新时间:2023-12-03 04:41:00 24 4
gpt4 key购买 nike

我花了很长时间来比较查询单个项目的不同方法以及何时使用每种方法。

是否有人有一个比较所有这些的链接,或者一个关于为什么您会使用其中一个而不是另一个的快速解释?还有更多我不知道的运算符吗?

谢谢。

最佳答案

以下是不同方法的概述:

  • Find() - 当您想通过主键获取项目时。如果找不到项目,这将返回 null。它会在进入数据库之前查看上下文(正如 Yaron 在评论中指出的那样),如果您需要在同一上下文处于事件状态时多次获取同一实体,这可能是一个重要的效率因素。

  • Single() - 当您期望查询仅返回一项时。如果查询没有准确返回一项,这将引发异常。

  • SingleOrDefault() - 当您期望查询返回零个或一个项目时(即您不确定是否存在具有给定键的项目)。如果查询不返回零个或一个项目,这将引发异常。

  • First() - 当您希望查询返回一个或多个项目,但您只想访问代码中的第一个项目时(此处的查询中排序可能很重要)。如果查询未返回至少一项,这将引发异常。

  • FirstOrDefault() - 当您期望查询返回零个或多个项目,但您只想访问代码中的第一个项目时(即您不确定是否存在具有给定键的项目)

关于.net - Entity Framework 4 Single() vs First() vs FirstOrDefault(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3485317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com