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)

异步确定数据库是否包含任何表。 不尝试确定表是否属于当前模型。

适用于