DatabaseFacade.EnsureDeletedAsync(CancellationToken) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Asynchronně zajišťuje, že databáze pro kontext neexistuje. Pokud neexistuje, neprovede se žádná akce. Pokud existuje, databáze se odstraní.
Upozornění: Odstraní se celá databáze a není nutné odebrat pouze databázové objekty používané modelem pro tento kontext.
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)
Parametry
- cancellationToken
- CancellationToken
A CancellationToken , která se má sledovat při čekání na dokončení úkolu.
Návraty
Úloha, která představuje asynchronní operaci uložení. Výsledek úkolu obsahuje true , pokud je databáze odstraněna, false pokud neexistuje.
- Atributy
Výjimky
Pokud je zrušena CancellationToken .
Poznámky
Při testování nebo vytváření prototypů pomocí Entity Frameworku se běžně používá EnsureCreatedAsync(CancellationToken) okamžitě následující EnsureDeletedAsync(CancellationToken) . Tím se zajistí, že je databáze v čistém stavu před každým spuštěním testu nebo prototypu. Všimněte si však, že data v databázi se nezachovají.
Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy čekejte asynchronní volání okamžitě nebo použijte samostatné instance DbContext pro operace, které se spouští paralelně. Další informace a příklady najdete v tématu Zabránění problémům s vlákny DbContext .
Další informace a příklady najdete v tématu Správa schémat databáze pomocí rozhraní EF Core a rozhraní API pro vytváření databází .