EF4支援三種構建方法:1. Database First方法。2.Model First方法。3.Code First 方法。開發人員可根據具體的項目情況,選擇任一種方法。
上次快速示範了Database First的方法。這次示範Model First方法。
如果大家有過使用Power designer 進行資料建模的經驗的話,就應該很熟悉該方法了。如果你之前沒有接觸過Power designer也沒關係,畢竟這些全是手工操作的。看一遍就會了。呵呵。
好了,咱們閑言少敘,書歸正傳。
============================================================================================
1.啟動VS2010.建立一個Console application : 名為:EFModelDemo 如:
2. 在項目上,右鍵=》選擇“Add->new Items..” 如:選擇:Ado.net entity data model : 名為:School
3. 選擇“empty model ” 點擊finish .如:
4. 此時會自動開啟edm的設計器介面;如:
5. 用滑鼠拖動“entity ”到介面設計器上。就會產生一個實體出來。如:
6. 給這三個實體增加其它屬性:如。在設計器上點擊滑鼠右鍵,選擇 Scalar property format -->display name and type.這樣就可以看到屬性的類型。
7. 預設情況下:屬性是string類型的。選中實體中的某一個屬性項(如ClassID),然後在屬性面板中將其type改為:int32.(因為,它將作為外鍵與Class實體中的ID對應,所以確保兩者的類型要一樣)如
8. 建立關聯:在toolbox中,用滑鼠左鍵單擊一下“Association”,然後可以鬆開滑鼠,“Association ”仍處於選擇狀態。移動滑鼠到設計面板上,當滑鼠靠近實體時,滑鼠指標會變化成折線。在主實體上按下左鍵,並拖動到從實體上,鬆開左鍵,此時會有一根線產生。就是關聯。如:
9. 修改Student , Course 之間的關聯為多對多(就*代表多個。*對*)。如:
10. 雙擊class,student之間的關聯,設定如:
11. 因為在Model First 中,EF4不會幫我們建立資料庫,只會幫我們建立表。所以我們要事先把資料庫建立好:
12. 此時,資料庫中沒有資料表。我們在edm設計器上空白地方,右鍵:如:
點擊ok後,如:
點:next,如:提示產生的指令碼。
點擊:finish以後。如
當串連伺服器成功以後,點擊:執行指令碼。則會在資料庫school中產生相應的資料表。
注意:觀察產生的資料表:student,course之間是多對多關係,所以會產生一個中間表:studentcourse,主鍵就是由student,course的主鍵組合.
在student 表中,我們設計了一個ClassID用於外部索引鍵關聯class實體。這種關聯在EF4中稱作:外部索引鍵關聯(有專門的一個外鍵去和導覽屬性對應)。EF4還支援另外一種關聯:獨立關聯(沒有專門的一個外鍵去和導覽屬性對應,EF4在沒我外鍵的情況下,也可以跟蹤管理導覽屬性)。這裡我們按在沒有ORM架構的時候,我們採用的傳統做法:就是採用外部索引鍵關聯兩個實體。
=============================================
好了,先到這。熬不住了,要休息了。晚安咯!!!