ADO.Net Entity Framework - Entity Data Model
在VS2008 SP1中,提供了新的資料存取方式 - Entity Framework,在EDM(Entity Data Model)的架構中,一共包含了三種定義:
1.概念結構定義(Conceptual Schema)
2.存放結構定義(Storage Schema)
3.對應結構定義(Mapping Schema)
利用VS內建工具,我們可以很輕鬆的產出EDM模型檔案(以下是我利用MSPetShop的資料庫做的範例),也可以利用EDM 產生器 (EdmGen.exe)來處理,當然也可以手工打造!
在EDM中我們也可以很簡單的了解各個資料表之間的關係。例如:Category及Product是屬於1對多,且以CategoryId為FK。
利用XML Editor開啟EDM檔案後,可以觀察出每個實體的定義(EntityType),以及各實體間的關聯(Association)。
在WebConfig中,所使用的連線字串也和以往的不太相同,為了能夠在各資料庫上使用,所以必需宣告使用的Data Provider等等資訊。
<add name="MSPetShop4Entities"
connectionString="
metadata=res://*;provider=System.Data.SqlClient;
provider connection string="Data Source=SHELLYPC;
Initial Catalog=MSPetShop4;Integrated Security=True;
MultipleActiveResultSets=True""
providerName="System.Data.EntityClient" />
利用EDM,可以取代實作DAL,直接在BLL以物件方式存取資料庫,算是省了不少功夫。而且存取方式多樣,除了可以透過LINQ TO Entity或是Entity SQL(可以使用於Entity Client或是Entity Object),所以不管是喜歡什麼樣方式開發的人,都可以選擇自己的喜好方式上手。
相關介紹:
MSDN - ADO.NET Entity Framework
The Next Generation of ADO.NET 系列 - 小朱大簡介Entity Framework的使用方式
Microsoft Visual Studio 2008 Service Pack 1 - 要玩Entity Framework必裝
Entity Designer 的模組化工作 - 想要手工打造EDM可以參考這裡。
另外,也有前輩替我們整理好不少的資源可以參考!~~
Entity Framework 快速上手 & 學習資源整理 – The Will Will Web Blog