Freigeben über


DbConfiguration.SetContextFactory Methode

Definition

Überlädt

SetContextFactory(Type, Func<DbContext>)

Rufen Sie diese Methode aus dem Konstruktor einer Klasse auf, die von DbConfiguration abgeleitet wird, um eine Factory festzulegen, um das Erstellen von Instanzen eines Kontexts zu ermöglichen DbContextInfo , der keinen öffentlichen, parameterlosen Konstruktor aufweist.

SetContextFactory<TContext>(Func<TContext>)

Rufen Sie diese Methode aus dem Konstruktor einer Klasse auf, die von DbConfiguration abgeleitet wird, um eine Factory festzulegen, um das Erstellen von Instanzen eines Kontexts zu ermöglichen DbContextInfo , der keinen öffentlichen, parameterlosen Konstruktor aufweist.

SetContextFactory(Type, Func<DbContext>)

Rufen Sie diese Methode aus dem Konstruktor einer Klasse auf, die von DbConfiguration abgeleitet wird, um eine Factory festzulegen, um das Erstellen von Instanzen eines Kontexts zu ermöglichen DbContextInfo , der keinen öffentlichen, parameterlosen Konstruktor aufweist.

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))

Parameter

contextType
Type

Der Kontexttyp, für den die Factory verwendet werden soll.

factory
Func<DbContext>

Der Delegat, der zum Erstellen von Kontextinstanzen verwendet werden soll.

Hinweise

Dies ist in der Regel erforderlich, um Entwurfszeittools wie Migrationen oder Gerüstbaucode die Verwendung von Kontexten zu ermöglichen, die keine öffentlichen, parameterlosen Konstruktoren aufweisen. Diese Methode wird als bequeme und auffindbare Möglichkeit zum Hinzufügen von Konfigurationen zu Entity Framework bereitgestellt. Intern funktioniert es auf die gleiche Weise wie die Verwendung von AddDependencyResolver, um einen geeigneten Resolver für Func<TResult> mit dem Kontext Type als Schlüssel hinzuzufügen. Dies bedeutet, dass die gleiche Funktionalität bei Bedarf mit einem benutzerdefinierten Resolver oder einem Resolver erreicht werden kann, der von einem Inversion-of-Control-Container unterstützt wird.

Gilt für:

SetContextFactory<TContext>(Func<TContext>)

Rufen Sie diese Methode aus dem Konstruktor einer Klasse auf, die von DbConfiguration abgeleitet wird, um eine Factory festzulegen, um das Erstellen von Instanzen eines Kontexts zu ermöglichen DbContextInfo , der keinen öffentlichen, parameterlosen Konstruktor aufweist.

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))

Typparameter

TContext

Der Kontexttyp, für den die Factory verwendet werden soll.

Parameter

factory
Func<TContext>

Der Delegat, der zum Erstellen von Kontextinstanzen verwendet werden soll.

Hinweise

Dies ist in der Regel erforderlich, um Entwurfszeittools wie Migrationen oder Gerüstbaucode die Verwendung von Kontexten zu ermöglichen, die keine öffentlichen, parameterlosen Konstruktoren aufweisen. Diese Methode wird als bequeme und auffindbare Möglichkeit zum Hinzufügen von Konfigurationen zu Entity Framework bereitgestellt. Intern funktioniert es auf die gleiche Weise wie die Verwendung von AddDependencyResolver, um einen geeigneten Resolver für Func<TResult> mit dem Kontext Type als Schlüssel hinzuzufügen. Dies bedeutet, dass die gleiche Funktionalität bei Bedarf mit einem benutzerdefinierten Resolver oder einem Resolver erreicht werden kann, der von einem Inversion-of-Control-Container unterstützt wird.

Gilt für: