Langue

HistoryRepository Classe

Définition

Classe de base pour le référentiel utilisé pour accéder à la table « __EFMigrationsHistory » qui suit les métadonnées relatives aux migrations EF Core, telles que les migrations qui ont été appliquées.

public abstract class HistoryRepository : Microsoft.EntityFrameworkCore.Migrations.IHistoryRepository
[System.Runtime.CompilerServices.Nullable(0)]
public abstract class HistoryRepository : Microsoft.EntityFrameworkCore.Migrations.IHistoryRepository
type HistoryRepository = class
    interface IHistoryRepository
[<System.Runtime.CompilerServices.Nullable(0)>]
type HistoryRepository = class
    interface IHistoryRepository
Public MustInherit Class HistoryRepository
Implements IHistoryRepository
Héritage
HistoryRepository
Attributs
Implémente

Remarques

Les fournisseurs de base de données doivent hériter de cette classe pour implémenter des fonctionnalités spécifiques au fournisseur.

La durée de vie du service est Scoped. Cela signifie que chaque DbContext instance utilisera sa propre instance de ce service. L’implémentation peut dépendre d’autres services inscrits avec une durée de vie quelconque. L’implémentation n’a pas besoin d’être thread-safe.

Pour plus d’informations et d’exemples, consultez les migrations de base de données .

Constructeurs

Nom Description
HistoryRepository(HistoryRepositoryDependencies)

Initialise une nouvelle instance de cette classe.

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

Cette API prend en charge l’infrastructure Entity Framework Core et n’est pas destinée à être utilisée directement à partir de votre code. Cette API peut changer ou être supprimée dans les versions ultérieures.

Champs

Nom Description
DefaultTableName

Nom par défaut de la table d’historique des migrations.

Propriétés

Nom Description
Dependencies

Dépendances spécifiques au fournisseur relationnel pour ce service.

ExistsSql

Substitué par les fournisseurs de base de données pour générer SQL qui teste l’existence de la table d’historique.

GetAppliedMigrationsSql

Génère SQL pour rechercher les migrations qui ont été appliquées.

LockReleaseBehavior

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une prudence extrême et savoir que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version de Entity Framework Core.

MigrationIdColumnName

Nom de la colonne qui contient l’identificateur de migration.

ProductVersionColumnName

Nom de la colonne qui contient la version du produit Entity Framework.

SqlGenerationHelper

Classe d’assistance pour la génération de SQL.

TableName

Nom de la table d’historique THe.

TableSchema

Schéma qui contient la table d’historique ou null si le schéma par défaut doit être utilisé.

Méthodes

Nom Description
AcquireDatabaseLock()

Obtient un verrou exclusif sur la base de données.

AcquireDatabaseLockAsync(CancellationToken)

Obtient un verrou exclusif sur la base de données.

ConfigureTable(EntityTypeBuilder<HistoryRow>)

Configure le type d’entité mappé à la table d’historique.

Create()

Crée la table d’historique.

CreateAsync(CancellationToken)

Crée la table d’historique.

EnsureModel()

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une prudence extrême et savoir que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version de Entity Framework Core.

Exists()

Vérifie si la table d’historique existe ou non.

ExistsAsync(CancellationToken)

Vérifie si la table d’historique existe ou non.

GetAppliedMigrations()

Interroge la table d’historique pour toutes les migrations qui ont été appliquées.

GetAppliedMigrationsAsync(CancellationToken)

Interroge la table d’historique pour toutes les migrations qui ont été appliquées.

GetBeginIfExistsScript(String)

Substitué par les fournisseurs de base de données pour générer un script SQL qui va BEGIN bloquer SQL si et uniquement si la migration avec l’identificateur donné existe déjà dans la table d’historique.

GetBeginIfNotExistsScript(String)

Substitué par les fournisseurs de base de données pour générer un script SQL qui va BEGIN bloquer SQL si et uniquement si la migration avec l’identificateur donné n’existe pas déjà dans la table d’historique.

GetCreateCommands()

Retourne les commandes de migration qui créent la table d’historique.

GetCreateIfNotExistsScript()

Substitué par un fournisseur de base de données pour générer un script SQL qui crée la table d’historique si et uniquement s’il n’existe pas déjà.

GetCreateScript()

Génère un script SQL qui crée la table d’historique.

GetDeleteScript(String)

Génère un script SQL pour supprimer une ligne de la table d’historique.

GetEndIfScript()

Substitué par les fournisseurs de base de données pour générer un script SQL dans END le bloc SQL.

GetInsertScript(HistoryRow)

Génère un script SQL pour insérer une ligne dans la table d’historique.

InterpretExistsResult(Object)

Interprète le résultat de l’exécution ExistsSql.

Implémentations d’interfaces explicites

Nom Description
IHistoryRepository.CreateIfNotExists()

Classe de base pour le référentiel utilisé pour accéder à la table « __EFMigrationsHistory » qui suit les métadonnées relatives aux migrations EF Core, telles que les migrations qui ont été appliquées.

IHistoryRepository.CreateIfNotExistsAsync(CancellationToken)

Classe de base pour le référentiel utilisé pour accéder à la table « __EFMigrationsHistory » qui suit les métadonnées relatives aux migrations EF Core, telles que les migrations qui ont été appliquées.

S’applique à