ADO.Net Entity Framework - Entity Data Model

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。

image

利用XML Editor開啟EDM檔案後,可以觀察出每個實體的定義(EntityType),以及各實體間的關聯(Association)。

image

 

在WebConfig中,所使用的連線字串也和以往的不太相同,為了能夠在各資料庫上使用,所以必需宣告使用的Data Provider等等資訊。

<add name="MSPetShop4Entities"
connectionString="
metadata=res://*;provider=System.Data.SqlClient;
provider connection string=
&quot;Data Source=SHELLYPC;
Initial Catalog=MSPetShop4;Integrated Security=True;
MultipleActiveResultSets=True
&quot;"
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

 

DotBlog 的標籤:,