HistoryRepository クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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 |
履歴テーブルを含むスキーマ、または |
メソッド
ConfigureTable(EntityTypeBuilder<HistoryRow>) |
履歴テーブルにマップされるエンティティ型を構成します。 |
Exists() |
履歴テーブルが存在するかどうかを確認します。 |
ExistsAsync(CancellationToken) |
履歴テーブルが存在するかどうかを確認します。 |
GetAppliedMigrations() |
適用されたすべての移行の履歴テーブルに対してクエリを実行します。 |
GetAppliedMigrationsAsync(CancellationToken) |
適用されたすべての移行の履歴テーブルに対してクエリを実行します。 |
GetBeginIfExistsScript(String) |
データベース プロバイダーによってオーバーライドされ、特定の識別子を持つ移行が |
GetBeginIfNotExistsScript(String) |
データベース プロバイダーによってオーバーライドされ、特定の識別子を持つ移行がまだ |
GetCreateIfNotExistsScript() |
データベース プロバイダーによってオーバーライドされ、まだ存在しない場合にのみ履歴テーブルを作成する SQL スクリプトを生成します。 |
GetCreateScript() |
履歴テーブルを作成する SQL スクリプトを生成します。 |
GetDeleteScript(String) |
履歴テーブルから行を削除する SQL スクリプトを生成します。 |
GetEndIfScript() |
SQL ブロックに対して SQL スクリプト |
GetInsertScript(HistoryRow) |
履歴テーブルに行を挿入する SQL スクリプトを生成します。 |
InterpretExistsResult(Object) |
を実行した結果を解釈します ExistsSql。 |
適用対象
Entity Framework