Sdílet prostřednictvím


EntityFrameworkServiceCollectionExtensions.AddDbContextPool Metoda

Definice

Přetížení

AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

AddDbContextPool<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Parametry typu

TContext

Typ kontextu, který se má zaregistrovat.

Parametry

serviceCollection
IServiceCollection

Chcete-li IServiceCollection přidat služby do.

optionsAction
Action<DbContextOptionsBuilder>

Požadovaná akce pro konfiguraci DbContextOptions kontextu. Při použití sdružování kontextu musí být konfigurace možností provedena externě; OnConfiguring(DbContextOptionsBuilder) nebude volána.

poolSize
Int32

Nastaví maximální počet instancí uchovávaných fondem. Výchozí hodnota je 1024.

Návraty

Stejná kolekce služeb, aby bylo možné zřetězených více volání.

Poznámky

Sdružování DbContext může zvýšit výkon ve scénářích s vysokou propustností opětovným použitím kontextových instancí. Pro většinu aplikací je ale tento nárůst výkonu velmi malý. Všimněte si, že při použití sdružování se konfigurace kontextu nemůže změnit mezi použitím a služby s vymezeným oborem vložené do kontextu se přeloží pouze jednou od počátečního oboru. Zvažte použití sdružování DbContext pouze v případech, kdy testování výkonu znamená, že poskytuje skutečnou podporu.

Tuto metodu použijte při použití injektáže závislostí v aplikaci, například s ASP.NET Core. U aplikací, které nepoužívají injektáž závislostí, zvažte vytvoření DbContext instancí přímo pomocí jeho konstruktoru. Metodu OnConfiguring(DbContextOptionsBuilder) je pak možné přepsat a nakonfigurovat připojovací řetězec a další možnosti.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy okamžitě vyčkejte na asynchronní volání nebo používejte samostatné instance DbContext pro operace, které se provádějí paralelně. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématech Použití DbContextu s injektácí závislostí a Použití sdružování DbContext .

Platí pro

AddDbContextPool<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Parametry typu

TContext

Typ kontextu, který se má zaregistrovat.

Parametry

serviceCollection
IServiceCollection

Chcete-li IServiceCollection přidat služby do.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Požadovaná akce pro konfiguraci DbContextOptions kontextu. Při použití sdružování kontextu musí být konfigurace možností provedena externě; OnConfiguring(DbContextOptionsBuilder) nebude volána.

poolSize
Int32

Nastaví maximální počet instancí uchovávaných fondem. Výchozí hodnota je 1024.

Návraty

Stejná kolekce služeb, aby bylo možné zřetězených více volání.

Poznámky

Sdružování DbContext může zvýšit výkon ve scénářích s vysokou propustností opětovným použitím kontextových instancí. Pro většinu aplikací je ale tento nárůst výkonu velmi malý. Všimněte si, že při použití sdružování se konfigurace kontextu nemůže změnit mezi použitím a služby s vymezeným oborem vložené do kontextu se přeloží pouze jednou od počátečního oboru. Zvažte použití sdružování DbContext pouze v případech, kdy testování výkonu znamená, že poskytuje skutečnou podporu.

Tuto metodu použijte při použití injektáže závislostí v aplikaci, například s ASP.NET Core. U aplikací, které nepoužívají injektáž závislostí, zvažte vytvoření DbContext instancí přímo pomocí jeho konstruktoru. Metodu OnConfiguring(DbContextOptionsBuilder) je pak možné přepsat a nakonfigurovat připojovací řetězec a další možnosti.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy okamžitě vyčkejte na asynchronní volání nebo používejte samostatné instance DbContext pro operace, které se provádějí paralelně. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématech Použití DbContextu s injektácí závislostí a Použití sdružování DbContext .

Toto přetížení má objekt optionsAction , který poskytuje aplikaci IServiceProvider. To je užitečné, pokud chcete nastavit Entity Framework Core tak, aby přeložil interní služby od primárního poskytovatele aplikačních služeb. Ve výchozím nastavení doporučujeme použít nástroj AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) , který entitě Entity Framework umožňuje vytvářet a udržovat vlastní IServiceProvider pro interní služby Entity Framework.

Platí pro

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Parametry typu

TContextService

Třída nebo rozhraní, které se použije k překladu kontextu z kontejneru.

TContextImplementation

Konkrétní typ implementace, který se má vytvořit.

Parametry

serviceCollection
IServiceCollection

Chcete-li IServiceCollection přidat služby do.

optionsAction
Action<DbContextOptionsBuilder>

Požadovaná akce pro konfiguraci DbContextOptions kontextu. Při použití sdružování kontextu musí být konfigurace možností provedena externě; OnConfiguring(DbContextOptionsBuilder) nebude volána.

poolSize
Int32

Nastaví maximální počet instancí uchovávaných fondem. Výchozí hodnota je 1024.

Návraty

Stejná kolekce služeb, aby bylo možné zřetězených více volání.

Poznámky

Sdružování DbContext může zvýšit výkon ve scénářích s vysokou propustností opětovným použitím kontextových instancí. Pro většinu aplikací je ale tento nárůst výkonu velmi malý. Všimněte si, že při použití sdružování se konfigurace kontextu nemůže změnit mezi použitím a služby s vymezeným oborem vložené do kontextu se přeloží pouze jednou od počátečního oboru. Zvažte použití sdružování DbContext pouze v případech, kdy testování výkonu znamená, že poskytuje skutečnou podporu.

Tuto metodu použijte při použití injektáže závislostí v aplikaci, například s ASP.NET Core. U aplikací, které nepoužívají injektáž závislostí, zvažte vytvoření DbContext instancí přímo pomocí jeho konstruktoru. Metodu OnConfiguring(DbContextOptionsBuilder) je pak možné přepsat a nakonfigurovat připojovací řetězec a další možnosti.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy okamžitě vyčkejte na asynchronní volání nebo používejte samostatné instance DbContext pro operace, které se provádějí paralelně. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématech Použití DbContextu s injektácí závislostí a Použití sdružování DbContext .

Platí pro

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs
Zdroj:
EntityFrameworkServiceCollectionExtensions.cs

Zaregistruje danou DbContext službu jako službu v IServiceCollectiona povolí pro tuto registraci sdružování DbContext.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Parametry typu

TContextService

Třída nebo rozhraní, které se použije k překladu kontextu z kontejneru.

TContextImplementation

Konkrétní typ implementace, který se má vytvořit.

Parametry

serviceCollection
IServiceCollection

Chcete-li IServiceCollection přidat služby do.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Požadovaná akce pro konfiguraci DbContextOptions kontextu. Při použití sdružování kontextu musí být konfigurace možností provedena externě; OnConfiguring(DbContextOptionsBuilder) nebude volána.

poolSize
Int32

Nastaví maximální počet instancí uchovávaných fondem. Výchozí hodnota je 1024.

Návraty

Stejná kolekce služeb, aby bylo možné zřetězených více volání.

Poznámky

Sdružování DbContext může zvýšit výkon ve scénářích s vysokou propustností opětovným použitím kontextových instancí. Pro většinu aplikací je ale tento nárůst výkonu velmi malý. Všimněte si, že při použití sdružování se konfigurace kontextu nemůže změnit mezi použitím a služby s vymezeným oborem vložené do kontextu se přeloží pouze jednou od počátečního oboru. Zvažte použití sdružování DbContext pouze v případech, kdy testování výkonu znamená, že poskytuje skutečnou podporu.

Tuto metodu použijte při použití injektáže závislostí v aplikaci, například s ASP.NET Core. U aplikací, které nepoužívají injektáž závislostí, zvažte vytvoření DbContext instancí přímo pomocí jeho konstruktoru. Metodu OnConfiguring(DbContextOptionsBuilder) je pak možné přepsat a nakonfigurovat připojovací řetězec a další možnosti.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy okamžitě vyčkejte na asynchronní volání nebo používejte samostatné instance DbContext pro operace, které se provádějí paralelně. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématech Použití DbContextu s injektácí závislostí a Použití sdružování DbContext .

Toto přetížení má objekt optionsAction , který poskytuje aplikaci IServiceProvider. To je užitečné, pokud chcete nastavit Entity Framework Core tak, aby přeložil interní služby od primárního poskytovatele aplikačních služeb. Ve výchozím nastavení doporučujeme použít nástroj AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) , který entitě Entity Framework umožňuje vytvářet a udržovat vlastní IServiceProvider pro interní služby Entity Framework.

Platí pro