Entity Framework 中的資料模型化

實體資料模型 (EDM) 是實體關聯性模型。EDM 會使用不受程式語言或關聯式資料庫結構所限制的中性格式來定義資料。EDM 結構描述可用來指定實體和關聯性的詳細資料,以及將它們實作成資料結構。

實體是指應用程式定義域中必須由資料代表的項目。您可以在一般的商務 (LOB) 應用程式中找到實體和關聯性的範例。LOB 應用程式定義域中的實體可能包括客戶、訂單、訂單行、供應商、產品、銷售人員、承運者和發票等等。EDM EntityType 是在應用程式定義域中代表實體的資料型別規格。

關聯性是指實體之間的邏輯連接:例如,商品訂單與下訂單之客戶之間的邏輯連接。由於客戶可能會有許多相關聯的訂單,因此客戶與該客戶訂單之間的關聯性就是一對多關聯性 (One-To-Many Relationship)。產品和供應商可能會有多對多關聯性 (Many-To-Many Relationship)。

定義實體和關聯性可能是非常複雜的程序。在 LOB 應用程式中,就算是商品訂單這種基本項目所需要的詳細資料量也會令人驚訝。例如,商品訂單可能會採用許多形式。它們可能包括店面訂單、電話訂單、網際網路訂單和目錄訂單。在 EDM 中,每種訂單類型的詳細資料都會以 XML 語法的概念加以指定。每種訂單類型的屬性和任何必要的條件約束 (Constraint) 會傳播至使用在概念結構描述上建立之資料的應用程式。

EDM 會使用兩種基本類型來建立實體及其關聯性的模型。

  • EntityType:應用程式定義域中資料結構詳細資料的抽象規格。

  • AssociationType:型別之間的邏輯連接。

EDM 設計結構描述會針對應用程式定義域中的實體定義結構、語意 (Semantics)、條件約束和關聯性。在物件服務的 EDM 實作中,概念結構描述會對應至另一個結構描述,其中包含描述儲存模型 (通常是資料庫中的資料表) 的中繼資料 (Metadata)。概念結構描述是用來產生將在應用程式程式碼中使用之可程式化物件模型的類別 (Class)。此外,實體架構 也會在執行階段使用此概念結構描述和儲存結構描述來驗證、查詢和更新應用程式資料。

本章節內容

另請參閱

概念

實作實體 (EDM)
實作關聯 (EDM)
Entity SQL 語言

其他資源

EDM 規格
範例應用程式 (Entity Framework)