EntityFrameworkServiceCollectionExtensions.AddPooledDbContextFactory Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
| Nome | Descrizione |
|---|---|
| AddPooledDbContextFactory<TContext>(IServiceCollection, Int32) |
Registra un pool in IDbContextFactory<TContext>IServiceCollection per la creazione di istanze del tipo specificato DbContext usando una dimensione del pool personalizzata. |
| AddPooledDbContextFactory<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) |
Registra un oggetto IDbContextFactory<TContext> in IServiceCollection per creare istanze di un determinato DbContext tipo in cui le istanze vengono raggruppate per il riutilizzo. |
| AddPooledDbContextFactory<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32) |
Registra un oggetto IDbContextFactory<TContext> in IServiceCollection per creare istanze di un determinato DbContext tipo in cui le istanze vengono raggruppate per il riutilizzo. |
AddPooledDbContextFactory<TContext>(IServiceCollection, Int32)
Registra un pool in IDbContextFactory<TContext>IServiceCollection per la creazione di istanze del tipo specificato DbContext usando una dimensione del pool personalizzata.
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPooledDbContextFactory<TContext>(this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddPooledDbContextFactory : Microsoft.Extensions.DependencyInjection.IServiceCollection * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddPooledDbContextFactory(Of TContext As DbContext) (serviceCollection As IServiceCollection, Optional poolSize As Integer = 1024) As IServiceCollection
Parametri di tipo
- TContext
Tipo di DbContext da creare dalla factory.
Parametri
- serviceCollection
- IServiceCollection
Oggetto IServiceCollection a cui vengono aggiunti i servizi.
- poolSize
- Int32
Numero massimo di TContext istanze mantenute dal pool. Il valore predefinito è 1024.
Valori restituiti
Lo stesso IServiceCollection modo in cui è possibile concatenare più chiamate.
Commenti
Questo overload è allineato al modello ConfigureDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime)di configurazione centralizzato di EF Core. e consente di specificare un oggetto personalizzato poolSize. Le opzioni configurate tramite ConfigureDbContext<TContext> vengono usate automaticamente, eliminando la necessità di ripetere la configurazione del provider.
Usare questo metodo quando si usa l'inserimento delle dipendenze nell'applicazione, ad esempio con ASP.NET Core. Per le applicazioni che non usano l'inserimento delle dipendenze, è consigliabile creare DbContext istanze direttamente con il relativo costruttore. È quindi possibile eseguire l'override del OnConfiguring(DbContextOptionsBuilder) metodo per configurare un stringa di connessione e altre opzioni.
Entity Framework Core non supporta più operazioni parallele in esecuzione nella stessa istanza di DbContext. Ciò include sia l'esecuzione parallela di query asincrone che qualsiasi uso simultaneo esplicito da più thread. Pertanto, attendere sempre le chiamate asincrone immediatamente o usare istanze DbContext separate per le operazioni eseguite in parallelo. Per altre informazioni ed esempi, vedere Evitare problemi di threading DbContext .
Per altre informazioni ed esempi, vedere Uso di DbContext con inserimento delle dipendenze, Uso di factory DbContext e Uso del pooling DbContext .
Si applica a
AddPooledDbContextFactory<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)
Registra un oggetto IDbContextFactory<TContext> in IServiceCollection per creare istanze di un determinato DbContext tipo in cui le istanze vengono raggruppate per il riutilizzo.
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPooledDbContextFactory<TContext>(this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPooledDbContextFactory<TContext>(this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddPooledDbContextFactory : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddPooledDbContextFactory(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection
<Extension()>
Public Function AddPooledDbContextFactory(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
Parametri di tipo
- TContext
Tipo di DbContext da creare dalla factory.
Parametri
- serviceCollection
- IServiceCollection
Oggetto IServiceCollection a cui aggiungere servizi.
- optionsAction
- Action<DbContextOptionsBuilder>
Azione necessaria per configurare l'oggetto DbContextOptions per il contesto. Quando si usa il pool di contesto, la configurazione delle opzioni deve essere eseguita esternamente; OnConfiguring(DbContextOptionsBuilder) non verrà chiamato.
- poolSize
- Int32
Imposta il numero massimo di istanze mantenute dal pool. Il valore predefinito è 1024.
Valori restituiti
La stessa raccolta di servizi in modo che sia possibile concatenare più chiamate.
Commenti
La registrazione di una factory anziché la registrazione diretta del tipo di contesto consente di creare facilmente nuove DbContext istanze. La registrazione di una factory è consigliata per le applicazioni Blazor e altre situazioni in cui l'ambito di inserimento delle dipendenze non è allineato alla durata del contesto.
Usare questo metodo quando si usa l'inserimento delle dipendenze nell'applicazione, ad esempio con Blazor. Per le applicazioni che non usano l'inserimento delle dipendenze, è consigliabile creare DbContext istanze direttamente con il relativo costruttore. È quindi possibile eseguire l'override del OnConfiguring(DbContextOptionsBuilder) metodo per configurare un stringa di connessione e altre opzioni.
Entity Framework Core non supporta più operazioni parallele in esecuzione nella stessa istanza di DbContext. Ciò include sia l'esecuzione parallela di query asincrone che qualsiasi uso simultaneo esplicito da più thread. Pertanto, attendere sempre le chiamate asincrone immediatamente o usare istanze DbContext separate per le operazioni eseguite in parallelo. Per altre informazioni ed esempi, vedere Evitare problemi di threading DbContext .
Per altre informazioni ed esempi, vedere Uso di DbContext con inserimento delle dipendenze, Uso di factory DbContext e Uso del pooling DbContext .
Si applica a
AddPooledDbContextFactory<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)
Registra un oggetto IDbContextFactory<TContext> in IServiceCollection per creare istanze di un determinato DbContext tipo in cui le istanze vengono raggruppate per il riutilizzo.
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPooledDbContextFactory<TContext>(this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddPooledDbContextFactory<TContext>(this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddPooledDbContextFactory : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddPooledDbContextFactory(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection
<Extension()>
Public Function AddPooledDbContextFactory(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
Parametri di tipo
- TContext
Tipo di DbContext da creare dalla factory.
Parametri
- serviceCollection
- IServiceCollection
Oggetto IServiceCollection a cui aggiungere servizi.
- optionsAction
- Action<IServiceProvider,DbContextOptionsBuilder>
Azione necessaria per configurare l'oggetto DbContextOptions per il contesto. Quando si usa il pool di contesto, la configurazione delle opzioni deve essere eseguita esternamente; OnConfiguring(DbContextOptionsBuilder) non verrà chiamato.
- poolSize
- Int32
Imposta il numero massimo di istanze mantenute dal pool. Il valore predefinito è 1024.
Valori restituiti
La stessa raccolta di servizi in modo che sia possibile concatenare più chiamate.
Commenti
La registrazione di una factory anziché la registrazione diretta del tipo di contesto consente di creare facilmente nuove DbContext istanze. La registrazione di una factory è consigliata per le applicazioni Blazor e altre situazioni in cui l'ambito di inserimento delle dipendenze non è allineato alla durata del contesto.
Usare questo metodo quando si usa l'inserimento delle dipendenze nell'applicazione, ad esempio con Blazor. Per le applicazioni che non usano l'inserimento delle dipendenze, è consigliabile creare DbContext istanze direttamente con il relativo costruttore. È quindi possibile eseguire l'override del OnConfiguring(DbContextOptionsBuilder) metodo per configurare un stringa di connessione e altre opzioni.
Entity Framework Core non supporta più operazioni parallele in esecuzione nella stessa istanza di DbContext. Ciò include sia l'esecuzione parallela di query asincrone che qualsiasi uso simultaneo esplicito da più thread. Pertanto, attendere sempre le chiamate asincrone immediatamente o usare istanze DbContext separate per le operazioni eseguite in parallelo. Per altre informazioni ed esempi, vedere Evitare problemi di threading DbContext .
Per altre informazioni ed esempi, vedere Uso di DbContext con inserimento delle dipendenze, Uso di factory DbContext e Uso del pooling DbContext .