DatabaseFacade.EnsureCreated メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コンテキストのデータベースが存在することを確認します。
public virtual bool EnsureCreated ();
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")]
public virtual bool EnsureCreated ();
abstract member EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> bool
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")>]
abstract member EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> bool
Public Overridable Function EnsureCreated () As Boolean
戻り値
true
データベースが作成されている場合は 。 false
既に存在する場合は 。
- 属性
注釈
- データベースが存在し、テーブルがある場合、アクションは実行されません。 データベース スキーマが Entity Framework モデルと互換性があることを確認するために何も行われません。
- データベースが存在するがテーブルがない場合は、Entity Framework モデルを使用してデータベース スキーマを作成します。
- データベースが存在しない場合は、データベースが作成され、Entity Framework モデルを使用してデータベース スキーマが作成されます。
Entity Framework を使用 EnsureCreated() してテストまたはプロトタイプを作成する場合は、直後 EnsureDeleted() にを使用するのが一般的です。 これにより、テスト/プロトタイプの各実行前に、データベースがクリーン状態になります。 ただし、データベース内のデータは保持されないことに注意してください。
この API では、データベースの作成に移行が使用されないことに注意してください。 さらに、後で移行を使用して作成されたデータベースを更新することはできません。 リレーショナル データベースを対象とし、移行を使用している場合は、 を使用 Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate して、移行を使用してデータベースが作成され、すべての移行が適用されていることを確認できます。
詳細と例については、「EF Core とデータベース作成 API を使用したデータベース スキーマの管理」を参照してください。
適用対象
Entity Framework