Поделиться через


IRelationalDatabaseCreator Интерфейс

Определение

Выполняет создание базы данных или схемы и другие связанные операции.

Этот тип обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

public interface IRelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Storage.IDatabaseCreator
type IRelationalDatabaseCreator = interface
    interface IDatabaseCreator
Public Interface IRelationalDatabaseCreator
Implements IDatabaseCreator
Производный
Реализации

Комментарии

Время существования службы — Scoped. Это означает, что каждый DbContext экземпляр будет использовать собственный экземпляр этой службы. Реализация может зависеть от других служб, зарегистрированных с любым временем существования. Реализация не обязательно должна быть потокобезопасной.

Дополнительные сведения и примеры см. в статье Реализация поставщиков и расширений баз данных .

Методы

CanConnect()

Определяет, доступна ли база данных и к ней можно подключиться.

(Унаследовано от IDatabaseCreator)
CanConnectAsync(CancellationToken)

Определяет, доступна ли база данных и к ней можно подключиться.

(Унаследовано от IDatabaseCreator)
Create()

Создает физическую базу данных. Не пытается заполнить его какой-либо схемой.

CreateAsync(CancellationToken)

Асинхронно создает физическую базу данных. Не пытается заполнить его какой-либо схемой.

CreateTables()

Создает все таблицы для текущей модели в базе данных. Попытка постепенного обновления схемы не выполняется. Предполагается, что ни одна из таблиц не существует в базе данных.

CreateTablesAsync(CancellationToken)

Асинхронно создает все таблицы для текущей модели в базе данных. Попытка постепенного обновления схемы не выполняется. Предполагается, что ни одна из таблиц не существует в базе данных.

Delete()

Удаляет физическую базу данных.

DeleteAsync(CancellationToken)

Асинхронно удаляет физическую базу данных.

EnsureCreated()

Гарантирует, что база данных для контекста существует. Если контекст существует, никаких действий не предпринимается. Если она не существует, создается база данных и вся ее схема. Если база данных существует, то для обеспечения ее совместимости с моделью для этого контекста не предпринимаются никакие усилия.

(Унаследовано от IDatabaseCreator)
EnsureCreatedAsync(CancellationToken)

Асинхронно гарантирует, что база данных для контекста существует. Если контекст существует, никаких действий не предпринимается. Если она не существует, создается база данных и вся ее схема. Если база данных существует, то для обеспечения ее совместимости с моделью для этого контекста не предпринимаются никакие усилия.

(Унаследовано от IDatabaseCreator)
EnsureDeleted()

Гарантирует, что база данных для контекста не существует. Если он не существует, никаких действий не выполняется. Если она существует, база данных удаляется.

Предупреждение. Удаляется вся база данных. Для удаления только объектов базы данных, используемых моделью для этого контекста, не предпринимаются никакие усилия.

(Унаследовано от IDatabaseCreator)
EnsureDeletedAsync(CancellationToken)

Асинхронно гарантирует, что база данных для контекста не существует. Если он не существует, никаких действий не выполняется. Если она существует, база данных удаляется.

Предупреждение. Удаляется вся база данных. Для удаления только объектов базы данных, используемых моделью для этого контекста, не предпринимаются никакие усилия.

(Унаследовано от IDatabaseCreator)
Exists()

Определяет, существует ли физическая база данных. Не предпринимается никаких попыток определить, содержит ли база данных схему для текущей модели.

ExistsAsync(CancellationToken)

Асинхронно определяет, существует ли физическая база данных. Не предпринимается никаких попыток определить, содержит ли база данных схему для текущей модели.

GenerateCreateScript()

Создает скрипт для создания всех таблиц для текущей модели.

HasTables()

Определяет, содержит ли база данных какие-либо таблицы. Не предпринимается никаких попыток определить, относятся ли таблицы к текущей модели.

HasTablesAsync(CancellationToken)

Асинхронно определяет, содержит ли база данных какие-либо таблицы. Не предпринимается никаких попыток определить, относятся ли таблицы к текущей модели.

Применяется к