DbSet.Find 方法

[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]

查找带给定主键值的实体。 如果上下文中存在带给定主键值的实体,则立即返回该实体,而不会向存储区发送请求。 否则,会向存储区发送查找带给定主键值的实体的请求,如果找到该实体,则将其附加到上下文并返回。 如果未在上下文或存储区中找到实体,则返回 null。

命名空间:  System.Data.Entity
程序集:  EntityFramework(在 EntityFramework.dll 中)

语法

声明
Public Overridable Function Find ( _
    ParamArray keyValues As Object() _
) As Object
用法
Dim instance As DbSet 
Dim keyValues As Object()
Dim returnValue As Object 

returnValue = instance.Find(keyValues)
public virtual Object Find(
    params Object[] keyValues
)
public:
virtual Object^ Find(
    ... array<Object^>^ keyValues
)
abstract Find : 
        keyValues:Object[] -> Object  
override Find : 
        keyValues:Object[] -> Object
public function Find(
    ... keyValues : Object[]
) : Object

参数

  • keyValues
    类型:System.Object[]
    要查找的实体的主键值。

返回值

类型:System.Object
找到的实体或为 null。

异常

例外 条件
InvalidOperationException

如果上下文中存在具有给定主键值的多个实体,则引发此异常。

InvalidOperationException

如果实体类型不是此上下文的数据模型的一部分,则引发此异常。

InvalidOperationException

如果键值的类型与要查找的实体类型的键值类型不匹配,则引发此异常。

InvalidOperationException

在已释放上下文时引发。

备注

组合键值的顺序在 EDM 中定义,而 EDM 又在设计器中由 Code First fluent API 或 DataMember 特性定义。

请参阅

参考

DbSet 类

System.Data.Entity 命名空间