DatabaseFacade.EnsureDeletedAsync(CancellationToken) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Асинхронно гарантирует, что база данных для контекста не существует. Если он не существует, никакие действия не предпринимаются. Если она существует, база данных удаляется.
Предупреждение. Удаляется вся база данных, и для удаления только объектов базы данных, используемых моделью для этого контекста, не предпринимается никаких усилий.
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