本篇整理 EF 核心類別:ObjectContext、ObjectQuery、ObjectStateEntry、ObjectStateManager(皆位於 System.Data.Objects),為後續章節操作奠基。
封裝資料庫連線(EntityConnection)、中繼資料(MetadataWorkspace)、物件狀態管理器(ObjectStateManager)。常用成員:
SaveChanges():持久化所有變更。AddObject(entitySetName, entity) / AddTo<EntitySet>(entity):新增實體。Attach(entity) / Attach(entitySetName, entity):附加現有實體至追蹤。DeleteObject(entity):標記刪除。CreateQuery<T>(esql, params):建立 ESQL 查詢。ApplyPropertyChanges(entitySetName, entity):套用離線實體變更。AcceptAllChanges():接受所有變更(重設狀態為 Unchanged)。管理快取中實體的 ObjectStateEntry,提供 GetObjectStateEntry(entity)、TryGetObjectStateEntry(key, out entry) 等方法檢查實體狀態(Added/Modified/Deleted/Unchanged/Detached)。
熟悉這些類別對進階追蹤控制、離線同步、效能調校至關重要。