語言

IRelationalDatabaseCreator 介面

定義

執行資料庫/架構建立及其他相關操作。

此類型通常由資料庫提供者(及其他擴充功能)使用。 它通常不被用於應用程式程式碼中。

public interface IRelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Storage.IDatabaseCreator
type IRelationalDatabaseCreator = interface
    interface IDatabaseCreator
Public Interface IRelationalDatabaseCreator
Implements IDatabaseCreator
衍生
實作

備註

服役期間為 Scoped。 這表示每個 DbContext 實例都會使用自己的服務實例。 實作方式可能取決於其他註冊於任何生命週期的服務。 實作不需要執行緒安全。

更多資訊與範例請參見 資料庫提供者與擴充功能的實作 。

方法

名稱 Description
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)

非同步判斷資料庫是否包含任何資料表。 沒有嘗試判斷這些資料表是否屬於目前的模型。

適用於