次の方法で共有


HistoryRepository クラス

定義

EF Core 移行に関するメタデータ (適用されている移行など) を追跡する '__EFMigrationsHistory' テーブルへのアクセスに使用されるリポジトリの基本クラス。

public abstract class HistoryRepository : Microsoft.EntityFrameworkCore.Migrations.IHistoryRepository
type HistoryRepository = class
    interface IHistoryRepository
Public MustInherit Class HistoryRepository
Implements IHistoryRepository
継承
HistoryRepository
実装

注釈

データベース プロバイダーは、プロバイダー固有の機能を実装するために、このクラスから継承する必要があります。

サービスの有効期間は です Scoped。 これは、各 DbContext インスタンスがこのサービスの独自のインスタンスを使用することを意味します。 実装は、任意の有効期間で登録されている他のサービスに依存する場合があります。 実装はスレッド セーフである必要はありません。

詳細と例については、「 データベースの移行 」を参照してください。

コンストラクター

HistoryRepository(HistoryRepositoryDependencies)

このクラスの新しいインスタンスを初期化します。

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

この API は Entity Framework Core インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 この API は、今後のリリースで変更または削除される可能性があります。

フィールド

DefaultTableName

移行履歴テーブルの既定の名前。

プロパティ

Dependencies

このサービスのリレーショナル プロバイダー固有の依存関係。

ExistsSql

データベース プロバイダーによってオーバーライドされ、履歴テーブルの存在をテストする SQL を生成します。

GetAppliedMigrationsSql

適用された移行を照会する SQL を生成します。

MigrationIdColumnName

移行識別子を保持する列の名前。

ProductVersionColumnName

Entity Framework 製品バージョンを含む列の名前。

SqlGenerationHelper

SQL を生成するためのヘルパー クラス。

TableName

履歴テーブル名。

TableSchema

履歴テーブルを含むスキーマ、または null 既定のスキーマを使用する必要がある場合は 。

メソッド

ConfigureTable(EntityTypeBuilder<HistoryRow>)

履歴テーブルにマップされるエンティティ型を構成します。

Exists()

履歴テーブルが存在するかどうかを確認します。

ExistsAsync(CancellationToken)

履歴テーブルが存在するかどうかを確認します。

GetAppliedMigrations()

適用されたすべての移行の履歴テーブルに対してクエリを実行します。

GetAppliedMigrationsAsync(CancellationToken)

適用されたすべての移行の履歴テーブルに対してクエリを実行します。

GetBeginIfExistsScript(String)

データベース プロバイダーによってオーバーライドされ、特定の識別子を持つ移行が BEGIN 履歴テーブルに既に存在する場合にのみ、SQL のブロックとなる SQL スクリプトを生成します。

GetBeginIfNotExistsScript(String)

データベース プロバイダーによってオーバーライドされ、特定の識別子を持つ移行がまだ BEGIN 履歴テーブルに存在しない場合にのみ、SQL のブロックとなる SQL スクリプトが生成されます。

GetCreateIfNotExistsScript()

データベース プロバイダーによってオーバーライドされ、まだ存在しない場合にのみ履歴テーブルを作成する SQL スクリプトを生成します。

GetCreateScript()

履歴テーブルを作成する SQL スクリプトを生成します。

GetDeleteScript(String)

履歴テーブルから行を削除する SQL スクリプトを生成します。

GetEndIfScript()

SQL ブロックに対して SQL スクリプト END を生成するために、データベース プロバイダーによってオーバーライドされます。

GetInsertScript(HistoryRow)

履歴テーブルに行を挿入する SQL スクリプトを生成します。

InterpretExistsResult(Object)

を実行した結果を解釈します ExistsSql

適用対象