Entity Framework 架構
下面額圖表展示了 Entity Framework 的整體架構
讓我們分別看一下架構的各個組成部分
EDM(Entity Data Model): EDM 包含三個主要部分 - 概念模型、映射和存儲模型。
概念模型: 概念模型包含模型類和它們之間的關係。這個將獨立於你的數據庫表設計。
存儲模型:存儲模型是數據庫設計模型,它包括表、視圖、存儲過程、和它們的關係以及鍵。
映射:映射由關於概念模型是怎樣和存儲模型映射的的信息組成。
LINQ to Entitis: LINQ-to-Entities (L2E)是一個寫對象模型查詢的一個查詢語言。它返回實體,這些實體被定義在概念模型中。你可以在這裏使用 LINQ 技能。
Entity SQL: Entity SQL是另外一種類似於 LINQ to Entity 的查詢語言。然而,它是一種比 L2E 難得多了並且開發者還要單獨學習它。
Object Service: 對象服務是一個訪問數據庫數據並且返回數據的主要入口點。對象服務負責具體化,這是一個將從實體客戶端數據提供器(下一層)返回的數據轉換成對象結構的一個過程。
實體客戶端數據提供器(Entity Client Data Provider): 這一層的主要職責是把 LINQ-to-Entities 或者 Entity SQL 查詢轉換成能被底層數據庫理解的 SQL 查詢。它和 ADO.Net 數據提供器通信,數據提供器依次地發送數據到數據庫或者從數據庫中檢索數據。
ADO.Net Data Provider:這一層使用標準的 ADO.Net 和數據庫通信。