DbContextOptionsBuilder<TContext> Classe
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.
Fornisce una superficie API semplice per la configurazione di DbContextOptions<TContext>. I database (e altre estensioni) definiscono in genere metodi di estensione su questo oggetto che consentono di configurare la connessione al database (e altre opzioni) da usare per un contesto.
public class DbContextOptionsBuilder<TContext> : Microsoft.EntityFrameworkCore.DbContextOptionsBuilder where TContext : DbContext
[System.Runtime.CompilerServices.Nullable(0)]
public class DbContextOptionsBuilder<TContext> : Microsoft.EntityFrameworkCore.DbContextOptionsBuilder where TContext : DbContext
type DbContextOptionsBuilder<'Context (requires 'Context :> DbContext)> = class
inherit DbContextOptionsBuilder
[<System.Runtime.CompilerServices.Nullable(0)>]
type DbContextOptionsBuilder<'Context (requires 'Context :> DbContext)> = class
inherit DbContextOptionsBuilder
Public Class DbContextOptionsBuilder(Of TContext)
Inherits DbContextOptionsBuilder
Parametri di tipo
- TContext
Tipo di contesto da configurare.
- Ereditarietà
- Attributi
Commenti
È possibile usare DbContextOptionsBuilder per configurare un contesto eseguendo l'override OnConfiguring(DbContextOptionsBuilder) o creando un DbContextOptions oggetto esternamente e passandolo al costruttore di contesto.
Per altre informazioni ed esempi, vedere Uso di DbContextOptions .
Costruttori
| Nome | Descrizione |
|---|---|
| DbContextOptionsBuilder<TContext>() |
Inizializza una nuova istanza della DbContextOptionsBuilder<TContext> classe senza alcun set di opzioni. |
| DbContextOptionsBuilder<TContext>(DbContextOptions<TContext>) |
Inizializza una nuova istanza della DbContextOptionsBuilder<TContext> classe per configurare ulteriormente un determinato DbContextOptionsoggetto . |
Proprietà
| Nome | Descrizione |
|---|---|
| IsConfigured |
Ottiene un valore che indica se sono state configurate opzioni. (Ereditato da DbContextOptionsBuilder) |
| Options |
Ottiene le opzioni configurate. |
Metodi
| Nome | Descrizione |
|---|---|
| AddInterceptors(IEnumerable<IInterceptor>) |
Aggiunge IInterceptor istanze a quelle registrate nel contesto. |
| AddInterceptors(IEnumerable<IInterceptor>) |
Aggiunge IInterceptor istanze a quelle registrate nel contesto. (Ereditato da DbContextOptionsBuilder) |
| AddInterceptors(IInterceptor[]) |
Aggiunge IInterceptor istanze a quelle registrate nel contesto. |
| AddInterceptors(IInterceptor[]) |
Aggiunge IInterceptor istanze a quelle registrate nel contesto. (Ereditato da DbContextOptionsBuilder) |
| ConfigureLoggingCacheTime(TimeSpan) |
Configura per quanto tempo EF Core memorizza nella cache la configurazione della registrazione in determinati percorsi ad alte prestazioni. In questo modo EF Core ignora i controlli di registrazione potenzialmente costosi, ma significa che le modifiche alla registrazione in fase di runtime (ad esempio, la registrazione di un nuovo DiagnosticListener potrebbe non essere presa immediatamente in considerazione). |
| ConfigureWarnings(Action<WarningsConfigurationBuilder>) |
Configura il comportamento di runtime degli avvisi generati da Entity Framework. È possibile impostare un comportamento e comportamenti predefiniti per ogni tipo di avviso. |
| ConfigureWarnings(Action<WarningsConfigurationBuilder>) |
Configura il comportamento di runtime degli avvisi generati da Entity Framework. È possibile impostare un comportamento e comportamenti predefiniti per ogni tipo di avviso. |
| EnableDetailedErrors(Boolean) |
Abilita errori dettagliati durante la gestione delle eccezioni dei valori di dati che si verificano durante l'elaborazione dei risultati delle query di archiviazione. Tali errori si verificano più spesso a causa di errori di configurazione delle proprietà dell'entità. Ad esempio, se una proprietà è configurata per essere di tipo 'int', ma i dati sottostanti nell'archivio sono effettivamente di tipo 'string', verrà generata un'eccezione in fase di esecuzione durante l'elaborazione del valore di dati. Quando questa opzione è abilitata e viene rilevato un errore di dati, l'eccezione generata includerà i dettagli della proprietà di entità specifica che ha generato l'errore. |
| EnableSensitiveDataLogging() |
Consente di includere i dati dell'applicazione nei messaggi di eccezione, nella registrazione e così via. Ciò può includere i valori assegnati alle proprietà delle istanze di entità, i valori dei parametri per i comandi inviati al database e altri dati di questo tipo. È consigliabile abilitare questo flag solo se sono presenti le misure di sicurezza appropriate in base alla riservatezza dei dati. |
| EnableSensitiveDataLogging(Boolean) |
Consente di includere i dati dell'applicazione nei messaggi di eccezione, nella registrazione e così via. Ciò può includere i valori assegnati alle proprietà delle istanze di entità, i valori dei parametri per i comandi inviati al database e altri dati di questo tipo. È consigliabile abilitare questo flag solo se sono presenti le misure di sicurezza appropriate in base alla riservatezza dei dati. |
| EnableServiceProviderCaching(Boolean) |
Abilita o disabilita la memorizzazione nella cache dei provider di servizi interni. La disabilitazione della memorizzazione nella cache può influire notevolmente sulle prestazioni e deve essere usata solo negli scenari di test che creano molti provider di servizi per l'isolamento dei test. |
| EnableThreadSafetyChecks(Boolean) |
Disabilita il rilevamento della concorrenza, che rileva molti casi di utilizzo simultaneo errato di un'istanza DbContext e genera un'eccezione informativa. Ciò offre un miglioramento delle prestazioni minore, ma se un'istanza DbContext viene usata contemporaneamente, il comportamento non sarà definito e il programma potrebbe non riuscire in modi imprevedibili. |
| LogTo(Action<String>, Func<EventId,LogLevel,Boolean>, Nullable<DbContextLoggerOptions>) |
Registra gli eventi filtrati da un delegato di filtro personalizzato fornito. Il filtro deve restituire true per registrare un messaggio o false per filtrarlo dal log. |
| LogTo(Action<String>, IEnumerable<EventId>, LogLevel, Nullable<DbContextLoggerOptions>) |
Registra gli eventi specificati usando l'azione fornita. Ad esempio, usare |
| LogTo(Action<String>, IEnumerable<String>, LogLevel, Nullable<DbContextLoggerOptions>) |
Registra tutti gli eventi nelle categorie specificate usando l'azione fornita. Ad esempio, usare |
| LogTo(Action<String>, LogLevel, Nullable<DbContextLoggerOptions>) |
Registra usando l'azione fornita. Ad esempio, usare |
| LogTo(Func<EventId,LogLevel,Boolean>, Action<EventData>) |
Registra gli eventi in un delegato di logger personalizzato filtrato da un delegato di filtro personalizzato. Il filtro deve restituire true per registrare un messaggio o false per filtrarlo dal log. |
| ReplaceService<TService,TCurrentImplementation,TNewImplementation>() |
Sostituisce l'implementazione interna di Entity Framework di un'implementazione specifica di un contratto di servizio con un'implementazione diversa. |
| ReplaceService<TService,TImplementation>() |
Sostituisce tutte le implementazioni interne di Entity Framework di un contratto di servizio con un'implementazione diversa. |
| UseApplicationServiceProvider(IServiceProvider) |
Imposta l'oggetto IServiceProvider da cui verranno ottenuti i servizi dell'applicazione. Questa operazione viene eseguita automaticamente quando si usa 'AddDbContext', quindi è raro che questo metodo debba essere chiamato. |
| UseAsyncSeeding(Func<DbContext,Boolean,CancellationToken,Task>) |
Configura il metodo di inizializzazione da eseguire dopo EnsureCreatedAsync(CancellationToken) la chiamata o dopo l'applicazione asincrona delle migrazioni. Verrà richiamato anche se non sono state eseguite modifiche all'archivio. |
| UseAsyncSeeding(Func<TContext,Boolean,CancellationToken,Task>) |
Configura il metodo di inizializzazione da eseguire dopo EnsureCreatedAsync(CancellationToken) la chiamata o dopo l'applicazione asincrona delle migrazioni. Verrà richiamato anche se non sono state eseguite modifiche all'archivio. |
| UseInternalServiceProvider(IServiceProvider) |
Imposta l'oggetto IServiceProvider da cui il contesto deve risolvere tutti i relativi servizi. Ef creerà e gestirà un provider di servizi se non è specificato alcuno. |
| UseLoggerFactory(ILoggerFactory) |
Imposta l'oggetto ILoggerFactory che verrà utilizzato per creare ILogger istanze per la registrazione eseguite da questo contesto. |
| UseMemoryCache(IMemoryCache) |
Imposta l'oggetto da utilizzare per la IMemoryCache memorizzazione nella cache delle query da questo contesto. |
| UseModel(IModel) |
Imposta il modello da utilizzare per il contesto. Se il modello è impostato, OnModelCreating(ModelBuilder) non verrà eseguito. |
| UseQueryTrackingBehavior(QueryTrackingBehavior) |
Imposta il comportamento di rilevamento per le query LINQ eseguite sul contesto. La disabilitazione del rilevamento delle modifiche è utile per gli scenari di sola lettura perché evita il sovraccarico di configurazione del rilevamento delle modifiche per ogni istanza di entità. Non è consigliabile disabilitare il rilevamento delle modifiche se si desidera modificare le istanze di entità e rendere persistenti tali modifiche al database usando SaveChanges(). |
| UseRootApplicationServiceProvider() |
Risolve la radice IServiceProvider dal provider di servizi dell'applicazione con ambito. Il provider radice può essere usato per ottenere i servizi dell'applicazione singleton dai servizi interni singleton. |
| UseRootApplicationServiceProvider(IServiceProvider) |
Imposta la radice IServiceProvider da cui è possibile ottenere i servizi dell'applicazione singleton dai servizi interni singleton. |
| UseSeeding(Action<DbContext,Boolean>) |
Configura il metodo di inizializzazione da eseguire dopo EnsureCreated() la chiamata o dopo l'applicazione delle migrazioni. Verrà richiamato anche se non sono state eseguite modifiche all'archivio. |
| UseSeeding(Action<TContext,Boolean>) |
Configura il metodo di inizializzazione da eseguire dopo EnsureCreated() la chiamata o dopo l'applicazione delle migrazioni. Verrà richiamato anche se non sono state eseguite modifiche all'archivio. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IDbContextOptionsBuilderInfrastructure.AddOrUpdateExtension<TExtension>(TExtension) |
Aggiunge l'estensione specificata alle opzioni. Se esiste già un'estensione esistente dello stesso tipo, verrà sostituita. (Ereditato da DbContextOptionsBuilder) |
| IDbContextOptionsBuilderInfrastructure.RemoveExtension<TExtension>() |
Rimuove l'estensione del tipo specificato dalle opzioni. Se non esiste alcuna estensione del tipo specificato, si tratta di un no-op. (Ereditato da DbContextOptionsBuilder) |