Condividi tramite


HistoryRepository Classe

Definizione

Classe di base per il repository usato per accedere alla tabella "__EFMigrationsHistory" che tiene traccia dei metadati sulle migrazioni di EF Core, ad esempio le migrazioni applicate.

public abstract class HistoryRepository : Microsoft.EntityFrameworkCore.Migrations.IHistoryRepository
type HistoryRepository = class
    interface IHistoryRepository
Public MustInherit Class HistoryRepository
Implements IHistoryRepository
Ereditarietà
HistoryRepository
Implementazioni

Commenti

I provider di database devono ereditare da questa classe per implementare funzionalità specifiche del provider.

La durata del servizio è Scoped. Ciò significa che ogni DbContext istanza userà la propria istanza di questo servizio. L'implementazione può dipendere da altri servizi registrati con qualsiasi durata. L'implementazione non deve essere thread-safe.

Per altre informazioni ed esempi, vedere Migrazioni di database .

Costruttori

HistoryRepository(HistoryRepositoryDependencies)

Inizializza una nuova istanza della classe.

HistoryRepository(IDatabaseCreator, IRawSqlCommandBuilder, IRelationalConnection, IDbContextOptions, IMigrationsModelDiffer, IMigrationsSqlGenerator, IRelationalAnnotationProvider, ISqlGenerationHelper)

Questa API supporta l'infrastruttura Entity Framework Core e non deve essere usata direttamente dal codice. Questa API può cambiare o essere rimossa nelle versioni future.

Campi

DefaultTableName

Nome predefinito per la tabella cronologia delle migrazioni.

Proprietà

Dependencies

Dipendenze specifiche del provider relazionale per questo servizio.

ExistsSql

Sottoposto a override da provider di database per generare SQL che verifica l'esistenza della tabella della cronologia.

GetAppliedMigrationsSql

Genera SQL per eseguire query sulle migrazioni applicate.

MigrationIdColumnName

Nome della colonna che contiene l'identificatore di migrazione.

ProductVersionColumnName

Nome della colonna contenente la versione del prodotto Entity Framework.

SqlGenerationHelper

Classe helper per la generazione di SQL.

TableName

Nome tabella cronologia THe.

TableSchema

Schema contenente la tabella della cronologia o null se lo schema predefinito deve essere usato.

Metodi

ConfigureTable(EntityTypeBuilder<HistoryRow>)

Configura il tipo di entità mappato alla tabella della cronologia.

Exists()

Verifica se esiste o meno la tabella della cronologia.

ExistsAsync(CancellationToken)

Verifica se esiste o meno la tabella della cronologia.

GetAppliedMigrations()

Esegue query sulla tabella della cronologia per tutte le migrazioni applicate.

GetAppliedMigrationsAsync(CancellationToken)

Esegue query sulla tabella della cronologia per tutte le migrazioni applicate.

GetBeginIfExistsScript(String)

Sottoposto a override dai provider di database per generare uno script SQL che conterrà BEGIN un blocco di SQL se e solo se la migrazione con l'identificatore specificato esiste già nella tabella della cronologia.

GetBeginIfNotExistsScript(String)

Sottoposto a override dai provider di database per generare uno script SQL che conterrà BEGIN un blocco di SQL se e solo se la migrazione con l'identificatore specificato non esiste già nella tabella della cronologia.

GetCreateIfNotExistsScript()

Sottoposto a override da un provider di database per generare uno script SQL che creerà la tabella della cronologia se e solo se non esiste già.

GetCreateScript()

Genera uno script SQL che creerà la tabella della cronologia.

GetDeleteScript(String)

Genera uno script SQL per eliminare una riga dalla tabella della cronologia.

GetEndIfScript()

Sottoposto a override da provider di database per generare uno script SQL nel END blocco SQL.

GetInsertScript(HistoryRow)

Genera uno script SQL per inserire una riga nella tabella della cronologia.

InterpretExistsResult(Object)

Interpreta il risultato dell'esecuzione ExistsSqldi .

Si applica a