Entity Framework4.0 (二)概述(EF4 的Model First 方法)

來源:互聯網
上載者:User

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架構的時候,我們採用的傳統做法:就是採用外部索引鍵關聯兩個實體。

=============================================

好了,先到這。熬不住了,要休息了。晚安咯!!!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.