HistoryContext 類別
[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]
此類別是供 Code First 移轉用來從資料庫讀取和寫入移轉記錄。 自訂您可以衍生自此類別的移轉記錄資料表的定義,並覆寫 OnModelCreating。 可以使用 SetHistoryContextFactory(String, Func<DbConnection, String, HistoryContext>) 以每個移轉組態為基礎來註冊衍生的執行個體,或使用 SetDefaultHistoryContext(Func<DbConnection, String, HistoryContext>) 以全域方式註冊。
繼承階層
System.Object
System.Data.Entity.DbContext
System.Data.Entity.Migrations.History.HistoryContext
命名空間: System.Data.Entity.Migrations.History
組件: EntityFramework (在 EntityFramework.dll 中)
語法
'宣告
Public Class HistoryContext _
Inherits DbContext _
Implements IDbModelCacheKeyProvider
'用途
Dim instance As HistoryContext
public class HistoryContext : DbContext,
IDbModelCacheKeyProvider
public ref class HistoryContext : public DbContext,
IDbModelCacheKeyProvider
type HistoryContext =
class
inherit DbContext
interface IDbModelCacheKeyProvider
end
public class HistoryContext extends DbContext implements IDbModelCacheKeyProvider
HistoryContext 類型會公開下列成員。
建構函式
名稱 | 描述 | |
---|---|---|
HistoryContext | 初始化 HistoryContext 類別的新執行個體。如果您要建立衍生的記錄內容,通常就會公開一個建構函式,接受相同的參數並且將其傳遞給此基底建構函式。 |
靠上
屬性
名稱 | 描述 | |
---|---|---|
CacheKey | 取得索引鍵,該索引鍵是用來找出先前為此內容建立的模型。這可用來避免每次建立新的內容執行個體時都要處理 OnModelCreating 和計算模型。依預設此屬性會傳回預設結構描述。在大多數情況下,並不需要覆寫此屬性。不過,如果您的 OnModelCreating 實作包含條件式邏輯,而該邏輯會導致為相同資料庫提供者和預設結構描述建立不同的模型,您就應該覆寫此屬性並計算適當的索引鍵。 | |
ChangeTracker | 針對處理實體變更追蹤的內容功能提供存取權。 (繼承自 DbContext)。 | |
Configuration | 為內容的組態選項提供存取權。 (繼承自 DbContext)。 | |
Database | 為此內容建立 Database 執行個體,允許針對基礎資料庫執行建立、刪除或存在檢查。 (繼承自 DbContext)。 | |
DefaultSchema | 取得移轉之模型的預設結構描述。除非在 OnModelCreating 中設定了不同的結構描述,否則此結構描述會用於移轉記錄資料表。 | |
History | 取得或設定 DbSet<TEntity>,其可用來讀寫 HistoryRow 執行個體。 |
靠上
方法
名稱 | 描述 | |
---|---|---|
Dispose() | 呼叫受保護的 Dispose 方法。 (繼承自 DbContext)。 | |
Dispose(Boolean) | 處置內容。如果基礎 ObjectContext 是由此內容所建立,或者當建立此內容時將擁有權傳給此內容,則也會處置它。如果資料庫的連接 (DbConnection 物件) 是由此內容所建立,或者當建立此內容時將擁有權傳給此內容,則也會處置此連接。 (繼承自 DbContext)。 | |
Entry(Object) | 取得給定實體的 DbEntityEntry 物件,以便提供有關此實體之資訊的存取權以及針對此實體執行動作的能力。 (繼承自 DbContext)。 | |
Entry<TEntity>(TEntity) | 取得給定實體的 DbEntityEntry<TEntity> 物件,以便提供有關此實體之資訊的存取權以及針對此實體執行動作的能力。 (繼承自 DbContext)。 | |
Equals | 判斷指定的 DbContext 是否等於目前的 DbContext。 (繼承自 DbContext)。 | |
Finalize | (繼承自 Object)。 | |
GetHashCode | 傳回此 DBContext 的雜湊函數。 (繼承自 DbContext)。 | |
GetType | 傳回目前 DbContext 的類型。 (繼承自 DbContext)。 | |
GetValidationErrors | 驗證追蹤的實體,並傳回包含驗證結果的 DbEntityValidationResult 集合。 (繼承自 DbContext)。 | |
MemberwiseClone | (繼承自 Object)。 | |
OnModelCreating | 套用移轉記錄資料表的預設組態。如果您覆寫此方法,建議您在套用自訂組態之前先呼叫此基本實作。 (覆寫 DbContext.OnModelCreating(DbModelBuilder)。) | |
SaveChanges | 將此內容中所做的所有變更儲存到基礎資料庫。 (繼承自 DbContext)。 | |
SaveChangesAsync() | 將此內容中所做的所有變更非同步儲存到基礎資料庫。 (繼承自 DbContext)。 | |
SaveChangesAsync(CancellationToken) | 將此內容中所做的所有變更非同步儲存到基礎資料庫。 (繼承自 DbContext)。 | |
Set(Type) | 傳回非泛型 DbSet 執行個體來存取內容中給定類型的實體和基礎存放區。 (繼承自 DbContext)。 | |
Set<TEntity>() | 傳回 DbSet<TEntity> 執行個體來存取內容中給定類型的實體和基礎存放區。 (繼承自 DbContext)。 | |
ShouldValidateEntity | 可讓使用者覆寫只驗證 Added 和 Modified 實體之預設行為的擴充點。 (繼承自 DbContext)。 | |
ToString | 傳回 DbContext 的字串表示法。 (繼承自 DbContext)。 | |
ValidateEntity | 可讓使用者自訂實體驗證或篩選出驗證結果的擴充點。由 GetValidationErrors() 呼叫。 (繼承自 DbContext)。 |
靠上
欄位
名稱 | 描述 | |
---|---|---|
DefaultTableName | 移轉記錄資料表所使用的預設名稱。 |
靠上
明確介面實作
名稱 | 描述 | |
---|---|---|
IObjectContextAdapter.ObjectContext | 傳回在此內容底層的 Entity Framework ObjectContext。 (繼承自 DbContext)。 |
靠上
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。並非所有的執行個體成員都是安全執行緒。