ObjectContext 类
[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]
ObjectContext 是封装 CLR 和数据库之间的连接的顶级元素,充当“创建”、“读取”、“更新”和“删除”操作的网关。
继承层次结构
System.Object
System.Data.Entity.Core.Objects.ObjectContext
命名空间: System.Data.Entity.Core.Objects
程序集: EntityFramework(在 EntityFramework.dll 中)
语法
声明
<SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")> _
Public Class ObjectContext _
Implements IDisposable, IObjectContextAdapter
用法
Dim instance As ObjectContext
[SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
public class ObjectContext : IDisposable,
IObjectContextAdapter
[SuppressMessageAttribute(L"Microsoft.Maintainability", L"CA1506:AvoidExcessiveClassCoupling")]
public ref class ObjectContext : IDisposable,
IObjectContextAdapter
[<SuppressMessageAttribute("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")>]
type ObjectContext =
class
interface IDisposable
interface IObjectContextAdapter
end
public class ObjectContext implements IDisposable, IObjectContextAdapter
ObjectContext 类型公开以下成员。
构造函数
名称 | 描述 | |
---|---|---|
ObjectContext(String) | 使用给定连接字符串和默认实体容器名称初始化 ObjectContext 类的新实例。 | |
ObjectContext(EntityConnection) | 使用给定的连接初始化 ObjectContext 类的新实例。在构造过程中,从 EntityConnection 对象提取元数据工作区。 | |
ObjectContext(String, String) | 使用给定连接字符串和实体容器名称初始化 ObjectContext 类的新实例。 | |
ObjectContext(EntityConnection, Boolean) | 使用给定的连接和元数据工作区创建 ObjectContext。 | |
ObjectContext(EntityConnection, String) | 使用给定连接和实体容器名称初始化 ObjectContext 类的新实例。 |
顶部
属性
名称 | 描述 | |
---|---|---|
CommandTimeout | 获取或设置所有对象上下文操作的超时值(以秒为单位)。null 值指示将使用基础提供程序的默认值。 | |
Connection | 获取对象上下文使用的连接。 | |
ContextOptions | 获取 ObjectContextOptions 实例,该实例包含影响 ObjectContext 行为的选项。 | |
DefaultContainerName | 获取或设置默认容器名称。 | |
InterceptionContext | 返回用于此上下文的 DbInterceptionContext。 | |
MetadataWorkspace | 获取对象上下文使用的元数据工作区。 | |
ObjectStateManager | 获取对象上下文用于跟踪对象更改的对象状态管理器。 | |
QueryProvider | 获取与此对象上下文关联的 LINQ 查询提供程序。 | |
TransactionHandler | 获取正由此上下文使用的事务处理程序。如果尚未启动任何事务,则可能为 null。 |
顶部
方法
名称 | 描述 | |
---|---|---|
AcceptAllChanges | 接受在对象上下文中对对象所做的所有更改。 | |
AddObject | 将对象添加到对象上下文。 | |
ApplyCurrentValues<TEntity> | 将标量值从提供的对象复制到 ObjectContext 中具有相同键的对象中。 | |
ApplyOriginalValues<TEntity> | 将标量值从提供的对象复制到 ObjectContext 中具有相同键的对象的原始值集中。 | |
ApplyPropertyChanges | 已过时。 将已分离对象的属性更改应用于已附加到对象上下文的对象。 | |
Attach | 在对象具有实体键时将对象或对象图附加到对象上下文。 | |
AttachTo | 将特定实体集中的对象或对象图附加到对象上下文。 | |
CreateDatabase | 使用当前数据源连接和 StoreItemCollection 中的元数据创建数据库。 | |
CreateDatabaseScript | 生成数据定义语言 (DDL) 脚本,该脚本为 StoreItemCollection 中的元数据创建架构对象(表、主键、外键)。StoreItemCollection 用于加载存储架构定义语言 (SSDL) 文件中的元数据。 | |
CreateEntityKey | 为特定对象创建实体键,如果实体键已存在,则返回该键。 | |
CreateObject<T> | 创建并返回所请求的类型的实例。 | |
CreateObjectSet<TEntity>() | 创建新的 ObjectSet<TEntity> 实例,该实例用于查询、添加、修改和删除指定实体类型的对象。 | |
CreateObjectSet<TEntity>(String) | 创建新的 ObjectSet<TEntity> 实例,该实例用于查询、添加、修改和删除具有指定类型和指定实体集名称的对象。 | |
CreateProxyTypes | 为提供的枚举中的每个类型生成可与实体框架一同使用的等效类型。 | |
CreateQuery<T> | 使用指定查询字符串在当前对象上下文中创建 ObjectQuery<T>。 | |
DatabaseExists | 检查在当前存储连接中指定为数据库的数据库是否在存储区上存在。大部分实际工作由当前存储连接的 DbProviderServices 实现完成。 | |
DeleteDatabase | 删除在当前数据源连接中指定为数据库的数据库。 | |
DeleteObject | 标记对象以备删除。 | |
Detach | 从对象上下文移除对象。 | |
DetectChanges | 确保 ObjectStateEntry 更改与由 ObjectStateManager 跟踪的所有对象中的更改进行同步。 | |
Dispose() | 释放对象上下文使用的资源。 | |
Dispose(Boolean) | 释放对象上下文使用的资源。 | |
Equals | (继承自 Object。) | |
ExecuteFunction(String, ObjectParameter[]) | 执行在数据源中定义并在概念模型中表示的存储过程或函数,丢弃该函数返回的任何结果,并返回执行该函数影响的行数。 | |
ExecuteFunction<TElement>(String, ObjectParameter[]) | 使用指定的参数,执行在数据源中定义并在概念模型中映射的存储过程或函数。返回一个类型化的 ObjectResult<T>。 | |
ExecuteFunction<TElement>(String, ExecutionOptions, ObjectParameter[]) | 对默认容器执行给定的函数。 | |
ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) | 使用指定的参数和合并选项,执行在数据源中定义并在概念模型中表示的给定存储过程或函数。返回一个类型化的 ObjectResult<T>。 | |
ExecuteStoreCommand(String, Object[]) | 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreCommand(TransactionalBehavior, String, Object[]) | 使用现有连接对数据源直接执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreCommandAsync(String, Object[]) | 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreCommandAsync(String, CancellationToken, Object[]) | 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreCommandAsync(TransactionalBehavior, String, Object[]) | 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreCommandAsync(TransactionalBehavior, String, CancellationToken, Object[]) | 使用现有连接对数据源直接异步执行任意命令。使用服务器的本机查询语言(如 SQL)指定该命令。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQuery<TElement>(String, Object[]) | 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQuery<TElement>(String, ExecutionOptions, Object[]) | 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQuery<TElement>(String, String, ExecutionOptions, Object[]) | 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQuery<TElement>(String, String, MergeOption, Object[]) | 对数据源直接执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, CancellationToken, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, CancellationToken, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。上下文未跟踪这些结果,请使用指定实体集名称的重载跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, CancellationToken, Object[]) | 对数据源直接异步执行查询并返回类型化结果的序列。使用服务器的本机查询语言(如 SQL)指定该查询。如果指定了实体集名称,则上下文会跟踪结果。与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。您提供的任何参数值都将自动转换为 DbParameter。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构造一个 DbParameter 并将它提供给 SqlQuery。这允许您在 SQL 查询字符串中使用命名参数。context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); | |
Finalize | 终结 ObjectContext 类的实例。 (重写 Object.Finalize()。) | |
GetHashCode | (继承自 Object。) | |
GetKnownProxyTypes | 返回所有现有代理类型。 | |
GetObjectByKey | 返回具有指定实体键的对象。 | |
GetObjectType | 返回与指定类型的代理对象关联的 POCO 实体的实体类型。 | |
GetType | (继承自 Object。) | |
LoadProperty(Object, String) | 通过指定的导航属性并使用默认合并选项,显式加载与提供的对象相关的对象。 | |
LoadProperty(Object, String, MergeOption) | 通过指定的导航属性并使用指定的合并选项,显式加载与提供的对象相关的对象。 | |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity, Object>>) | 通过指定的 LINQ 查询并使用默认合并选项,显式加载与提供的对象相关的对象。 | |
LoadProperty<TEntity>(TEntity, Expression<Func<TEntity, Object>>, MergeOption) | 通过指定的 LINQ 查询并使用指定的合并选项,显式加载与提供的对象相关的对象。 | |
MemberwiseClone | (继承自 Object。) | |
Refresh(RefreshMode, IEnumerable) | 使用数据库中的数据更新对象上下文中的对象集合。 | |
Refresh(RefreshMode, Object) | 使用数据库中的数据更新对象上下文中的对象。 | |
RefreshAsync(RefreshMode, IEnumerable) | 使用数据库中的数据异步更新对象上下文中的对象集合。 | |
RefreshAsync(RefreshMode, Object) | 使用数据库中的数据异步更新对象上下文中的对象。 | |
RefreshAsync(RefreshMode, IEnumerable, CancellationToken) | 使用数据库中的数据异步更新对象上下文中的对象集合。 | |
RefreshAsync(RefreshMode, Object, CancellationToken) | 使用数据库中的数据异步更新对象上下文中的对象。 | |
SaveChanges() | 将所有更新保存到数据库并重置对象上下文中的更改跟踪。 | |
SaveChanges(Boolean) | 已过时。 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 | |
SaveChanges(SaveOptions) | 将所有更新保存到数据库并可选择重置对象上下文中的更改跟踪。 | |
SaveChangesAsync() | 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 | |
SaveChangesAsync(CancellationToken) | 将所有更新异步保存到数据库并重置对象上下文中的更改跟踪。 | |
SaveChangesAsync(SaveOptions) | 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 | |
SaveChangesAsync(SaveOptions, CancellationToken) | 将所有更新异步保存到数据库并可选择重置对象上下文中的更改跟踪。 | |
ToString | (继承自 Object。) | |
Translate<TElement>(DbDataReader) | 将包含实体数据行的 DbDataReader 转换为请求的实体类型的对象。 | |
Translate<TEntity>(DbDataReader, String, MergeOption) | 在特定的实体集中,使用指定的合并选项将包含实体数据行的 DbDataReader 转换为请求的实体类型的对象。 | |
TryGetObjectByKey | 返回具有指定实体键的对象。 |
顶部
事件
名称 | 描述 | |
---|---|---|
ObjectMaterialized | 当使用数据源中的数据创建新的实体对象(作为查询或加载操作的一部分)时发生。 | |
SavingChanges | 在将更改保存到数据源时发生。 |
顶部
显式接口实现
名称 | 描述 | |
---|---|---|
IObjectContextAdapter.ObjectContext | 返回自身。ObjectContext 实现 IObjectContextAdapter 以便为 DbContext 和 ObjectContext(这两者将返回基础 ObjectContext)提供通用接口。 |
顶部
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。