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


IHistoryRepository Интерфейс

Определение

Интерфейс репозитория, используемый для доступа к таблице "__EFMigrationsHistory", который отслеживает метаданные о миграциях EF Core, например о том, какие миграции были применены.

public interface IHistoryRepository
type IHistoryRepository = interface
Public Interface IHistoryRepository
Производный

Комментарии

Поставщики баз данных обычно реализуют эту службу путем наследования от HistoryRepository.

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

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

Методы

Exists()

Проверяет, существует ли таблица журнала.

ExistsAsync(CancellationToken)

Проверяет, существует ли таблица журнала.

GetAppliedMigrations()

Запрашивает таблицу журнала для всех примененных миграций.

GetAppliedMigrationsAsync(CancellationToken)

Запрашивает таблицу журнала для всех примененных миграций.

GetBeginIfExistsScript(String)

Создает скрипт SQL, который будет BEGIN блоком SQL только в том случае, если миграция с заданным идентификатором уже существует в таблице журнала.

GetBeginIfNotExistsScript(String)

Создает скрипт SQL, который будет BEGIN блоком SQL только в том случае, если миграция с заданным идентификатором еще не существует в таблице журнала.

GetCreateIfNotExistsScript()

Создает скрипт SQL, который создаст таблицу журнала только в том случае, если она еще не существует.

GetCreateScript()

Создает скрипт SQL, который создаст таблицу журнала.

GetDeleteScript(String)

Создает скрипт SQL для удаления строки из таблицы журнала.

GetEndIfScript()

Создает скрипт SQL для END блока SQL.

GetInsertScript(HistoryRow)

Создает скрипт SQL для вставки строки в таблицу журнала.

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