DbConfiguration 類別
[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]
此類別的衍生類別可與衍生自 DbContext 的類別放入相同的組件中,用於定義應用程式的 Entity Framework 組態。 組態設定方式是在衍生類型的建構函式中呼叫此類別受保護的方法並設定其受保護的屬性。 所要使用的類型也可以登錄於應用程式的組態檔。 如需 Entity Framework 組態的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=260883。
繼承階層
System.Object
System.Data.Entity.DbConfiguration
命名空間: System.Data.Entity
組件: EntityFramework (在 EntityFramework.dll 中)
語法
'宣告
Public Class DbConfiguration
'用途
Dim instance As DbConfiguration
public class DbConfiguration
public ref class DbConfiguration
type DbConfiguration = class end
public class DbConfiguration
DbConfiguration 類型會公開下列成員。
建構函式
名稱 | 描述 | |
---|---|---|
DbConfiguration | 初始化 DbConfiguration 類別的新執行個體。 |
靠上
屬性
名稱 | 描述 | |
---|---|---|
DependencyResolver | 取得用於解析 Entity Framework 服務相依性的 IDbDependencyResolver。 |
靠上
方法
名稱 | 描述 | |
---|---|---|
AddDefaultResolver | 將 IDbDependencyResolver 執行個體加入至解析程式的責任鏈結,以解析 Entity Framework 所需的相依性。 | |
AddDependencyResolver | 將 IDbDependencyResolver 執行個體加入至解析程式的責任鏈結,以解析 Entity Framework 所需的相依性。 | |
AddInterceptor | 在應用程式啟動時註冊 IDbInterceptor。請注意,也可以隨時使用 DbInterception 來新增和移除攔截器。 | |
Equals | 指定此執行個體是否等於特定物件。 (覆寫 Object.Equals(Object)。) | |
Finalize | (繼承自 Object)。 | |
GetHashCode | 取得與此執行個體相關聯的雜湊碼。 (覆寫 Object.GetHashCode()。) | |
GetType | 取得目前執行個體的 Type。 | |
LoadConfiguration(Assembly) | 嘗試從指定的組件探索及載入 DbConfiguration。此方法是要由工具所使用,以確保正確的組態會載入應用程式定義域。在存取 DependencyResolver 屬性之前,工具應該使用此方法。如果工具知道所使用的 DbContext 類型,則應該使用 LoadConfiguration(Type) 方法,因為這樣會提高找到正確組態的機會。 | |
LoadConfiguration(Type) | 嘗試探索及載入與給定 DbContext 相關聯的 DbConfiguration。此方法是要由工具所使用,以確保正確的組態會載入應用程式定義域。在存取 DependencyResolver 屬性之前,工具應該使用此方法。 | |
MemberwiseClone | 建立目前 Object 的淺層複本 (Shallow Copy)。 | |
SetConfiguration | 此應用程式定義域之 DbConfiguration 的單一執行個體。這可在應用程式啟動而仍未使用任何 Entity Framework 功能之前設定,隨後即應一律當成唯讀項目看待。 | |
SetContextFactory(Type, Func<DbContext>) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可設定 Factory 允許 DbContextInfo 建立沒有公用且無參數之建構函式的內容執行個體。 | |
SetContextFactory<TContext>(Func<TContext>) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可設定 Factory 允許 DbContextInfo 建立沒有公用且無參數之建構函式的內容執行個體。 | |
SetDatabaseInitializer<TContext> | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以設定要用於給定內容類型的資料庫初始設定式。初次使用給定的 DbContext 類型存取資料庫時,便會呼叫資料庫初始設定式。Code First 內容的預設策略是 CreateDatabaseIfNotExists<TContext> 的執行個體。 | |
SetDatabaseLogFormatter | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可針對 DatabaseLogFormatter 的類型將 Factory 設定為搭配 Log 一起使用。 | |
SetDefaultConnectionFactory | 當 DbContext 未獲提供或找不到其他連接字串或連接時,設定用於依照慣例建立連接的 IDbConnectionFactory。請注意,只要安裝了 EntityFramework NuGet 封裝,就會在 app.config 或 web.config 檔案中設定預設連接工廠。如同所有的組態檔設定,組態檔中的預設連接工廠設定會優先於以此方法進行的任何設定。因此,您必須先從組態檔移除該項設定,呼叫此方法才會發生效用。從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以變更所使用的預設連接工廠。 | |
SetDefaultHistoryContext | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以設定將用於針對任何 DbMigrationsConfiguration 建立預設 HistoryContext 的 Func<T1, T2, TResult> 委派。如果未在 DbMigrationsConfiguration 中明確設定任何 Factory 而且並未使用 SetHistoryContext(String, Func<DbConnection, String, HistoryContext>) 方法針對使用中的提供者註冊任何 Factory,則只會使用此預設 Factory。 | |
SetDefaultSpatialServices | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可設定 DbSpatialServices 的全域執行個體,每當需要空間提供者而且找不到提供者特定的空間提供者時,將會使用此執行個體。通常,提供者特定的空間提供者是取自 DbProviderServices 實作,接著藉由為 DbSpatialServices 解析服務 (傳遞提供者非變異名稱當做索引鍵) 加以傳回。不過,這對於 DbGeometry 和 DbGeography 獨立執行個體無效,因為不可能知道要使用的空間提供者。因此,在建立 DbGeometry 和 DbGeography 的獨立執行個體時,永遠都會使用全域空間提供者。 | |
SetDefaultTransactionHandler | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可註冊 TransactionHandler。 | |
SetExecutionStrategy(String, Func<IDbExecutionStrategy>) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以註冊要與給定的非變異名稱所表示的提供者搭配使用的 IDbExecutionStrategy。 | |
SetExecutionStrategy(String, Func<IDbExecutionStrategy>, String) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以註冊要與給定的非變異名稱連同給定的伺服器名稱所表示的提供者搭配使用的 IDbExecutionStrategy。 | |
SetHistoryContext | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以設定能夠針對任何未設定明確 Factory 的 DbMigrationsConfiguration 建立自訂 HistoryContext 的 Func<T1, T2, TResult> 委派。 | |
SetManifestTokenResolver | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法以設定 IManifestTokenResolver 的實作,讓您不一定要開啟連接就能夠從連接取得提供者資訊清單語彙基元。 | |
SetMetadataAnnotationSerializer | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可為 IMetadataAnnotationSerializer 的實作設定 Factory,這樣可讓 MetadataProperty 執行個體所表示的自訂註釋序列化成 EDMX XML 以及從 EDMX XML 序列化。 | |
SetMigrationSqlGenerator | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以註冊要與給定的非變異名稱所表示的提供者搭配使用的 MigrationSqlGenerator。 | |
SetModelCacheKey | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可將 Func<T, TResult> 設定為模型快取索引鍵 Factory,這樣可讓用來快取 DbContext 背後模型的索引鍵得以變更。 | |
SetPluralizationService | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法以設定複數表示服務。 | |
SetProviderFactory | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法以登錄 ADO.NET 提供者。 | |
SetProviderFactoryResolver | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法以設定 IDbProviderFactoryResolver 的實作,讓您能夠在預設實作未臻完善的情況下從 DbConnection 取得 DbProviderFactory。 | |
SetProviderServices | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法以登錄 Entity Framework 提供者。 | |
SetSpatialServices(String, DbSpatialServices) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可設定 DbSpatialServices 的實作,此實作會用於具有任何資訊清單語彙基元的特定提供者。 | |
SetSpatialServices(DbProviderInfo, DbSpatialServices) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法可設定 DbSpatialServices 的實作,此實作會用於特定提供者和提供者資訊清單語彙基元。 | |
SetTableExistenceChecker | 從衍生自 DbConfiguration 之類別的建構函式呼叫這個方法,以登錄給定提供者的資料庫資料表存在檢查程式。 | |
SetTransactionHandler(String, Func<TransactionHandler>) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以註冊要與給定的非變異名稱所表示的提供者搭配使用的 TransactionHandler。 | |
SetTransactionHandler(String, Func<TransactionHandler>, String) | 從衍生自 DbConfiguration 之類別的建構函式呼叫此方法,以註冊要與給定的非變異名稱連同給定的伺服器名稱所表示的提供者搭配使用的 TransactionHandler。 | |
ToString | 傳回此執行個體的字串表示。 (覆寫 Object.ToString()。) |
靠上
事件
名稱 | 描述 | |
---|---|---|
Loaded | 於 EF 初始化期間,在 DbConfiguration 已建構之後而仍待鎖定以供使用之前發生。 |
靠上
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。並非所有的執行個體成員都是安全執行緒。