DbConfiguration.SetContextFactory<TContext> 方法 (Func<TContext>)

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

从派生自 DbConfiguration 的类的构造函数调用此方法以设置工厂,从而允许 DbContextInfo 创建不具有公共无参数构造函数的上下文的实例。

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

语法

声明
Protected Friend Sub SetContextFactory(Of TContext As DbContext) ( _
    factory As Func(Of TContext) _
)
用法
Dim factory As Func(Of TContext)

Me.SetContextFactory(factory)
protected internal void SetContextFactory<TContext>(
    Func<TContext> factory
)
where TContext : DbContext
protected public:
generic<typename TContext>
where TContext : DbContext 
void SetContextFactory(
    Func<TContext>^ factory
)
member SetContextFactory : 
        factory:Func<'TContext> -> unit   when 'TContext : DbContext
JScript does not support generic types and methods.

类型参数

  • TContext
    应对其使用工厂的上下文类型。

参数

  • factory
    类型:System.Func<TContext>
    用于创建上下文实例的委托。

备注

通常需要使用它来允许迁移或基架代码等设计时工具使用不具有公共无参数构造函数的上下文。 此方法作为用于将配置添加到实体框架的方便且可发现的方式提供。 在内部,其工作方式与使用 AddDependencyResolver 为将上下文 Type 作为键的 Func<TResult> 添加适当解析程序的工作方式相同。 这意味着,如果需要,可以使用自定义解析程序或者控制反转容器支持的解析程序实现相同功能。

请参阅

参考

DbConfiguration 类

SetContextFactory 重载

System.Data.Entity 命名空间