Поделиться через


DbConfiguration.SetContextFactory Метод

Определение

Перегрузки

SetContextFactory(Type, Func<DbContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику, которая позволяет DbContextInfo создавать экземпляры контекста без открытого конструктора без параметров.

SetContextFactory<TContext>(Func<TContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику, которая позволяет DbContextInfo создавать экземпляры контекста без открытого конструктора без параметров.

SetContextFactory(Type, Func<DbContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику, которая позволяет DbContextInfo создавать экземпляры контекста без открытого конструктора без параметров.

protected internal void SetContextFactory (Type contextType, Func<System.Data.Entity.DbContext> factory);
member this.SetContextFactory : Type * Func<System.Data.Entity.DbContext> -> unit
Protected Friend Sub SetContextFactory (contextType As Type, factory As Func(Of DbContext))

Параметры

contextType
Type

Тип контекста, для которого должна использоваться фабрика.

factory
Func<DbContext>

Делегат, используемый для создания экземпляров контекста.

Комментарии

Обычно это необходимо, чтобы средства времени разработки, такие как миграция или код формирования шаблонов, использовали контексты, в которых нет открытых конструкторов без параметров. Этот метод предоставляется как удобный и доступный для обнаружения способ добавления конфигурации в Entity Framework. Внутренне это работает так же, как и при использовании AddDependencyResolver для добавления соответствующего сопоставителя для Func<TResult> с контекстом Type в качестве ключа. Это означает, что при необходимости те же функции можно реализовать с помощью пользовательского сопоставителя или сопоставителя, поддерживаемого контейнером Инверсии управления.

Применяется к

SetContextFactory<TContext>(Func<TContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику, которая позволяет DbContextInfo создавать экземпляры контекста без открытого конструктора без параметров.

protected internal void SetContextFactory<TContext> (Func<TContext> factory) where TContext : System.Data.Entity.DbContext;
member this.SetContextFactory : Func<'Context (requires 'Context :> System.Data.Entity.DbContext)> -> unit (requires 'Context :> System.Data.Entity.DbContext)
Protected Friend Sub SetContextFactory(Of TContext As DbContext) (factory As Func(Of TContext))

Параметры типа

TContext

Тип контекста, для которого должна использоваться фабрика.

Параметры

factory
Func<TContext>

Делегат, используемый для создания экземпляров контекста.

Комментарии

Обычно это необходимо, чтобы средства времени разработки, такие как миграция или код формирования шаблонов, использовали контексты, в которых нет открытых конструкторов без параметров. Этот метод предоставляется как удобный и доступный для обнаружения способ добавления конфигурации в Entity Framework. Внутренне это работает так же, как и при использовании AddDependencyResolver для добавления соответствующего сопоставителя для Func<TResult> с контекстом Type в качестве ключа. Это означает, что при необходимости те же функции можно реализовать с помощью пользовательского сопоставителя или сопоставителя, поддерживаемого контейнером Инверсии управления.

Применяется к