DatabaseFacade.EnsureDeletedAsync(CancellationToken) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コンテキストのデータベースが存在しないことを非同期的に確認します。 存在しない場合、アクションは実行されません。 存在する場合は、データベースが削除されます。
警告: データベース全体が削除され、このコンテキストでモデルによって使用されるデータベース オブジェクトだけを削除する作業は行われません。
public virtual System.Threading.Tasks.Task<bool> EnsureDeletedAsync (System.Threading.CancellationToken cancellationToken = default);
[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 System.Threading.Tasks.Task<bool> EnsureDeletedAsync (System.Threading.CancellationToken cancellationToken = default);
abstract member EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<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 EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Overridable Function EnsureDeletedAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)
パラメーター
- cancellationToken
- CancellationToken
CancellationTokenタスクの完了を待機している間に観察する 。
戻り値
非同期の保存操作を表すタスク。 タスクの結果には、 true
データベースが削除された場合、 false
データベースが存在しない場合は が含まれます。
- 属性
例外
CancellationToken が取り消されている場合。
注釈
Entity Framework を使用 EnsureCreatedAsync(CancellationToken) してテストまたはプロトタイプを作成する場合は、直後 EnsureDeletedAsync(CancellationToken) にを使用するのが一般的です。 これにより、テスト/プロトタイプの各実行前に、データベースがクリーン状態になります。 ただし、データベース内のデータは保持されないことに注意してください。
Entity Framework Core では、同じ DbContext インスタンスで複数の並列操作を実行することはできません。 これには、非同期クエリの並列実行と、複数のスレッドからの明示的な同時使用の両方が含まれます。 そのため、非同期呼び出しは常にすぐに待機するか、並列で実行される操作には個別の DbContext インスタンスを使用します。 詳細と例については、「 DbContext スレッドの問題を回避する 」を参照してください。
詳細と例については、「EF Core とデータベース作成 API を使用したデータベース スキーマの管理」を参照してください。
適用対象
Entity Framework