顯示具有 Code First 標籤的文章。 顯示所有文章
顯示具有 Code First 標籤的文章。 顯示所有文章

使用Entity Framework Code first建立多對多關係

Code First

Code First中文可以稱「程式碼先行」或「程式碼優先」,在Entity Framework 4.1時正式支援,它與一般開發習慣不同,先透過程式碼來定義資料結構(一般是POCO,Plain Old CLR Object),定義完成之後即可開始進行開發工作。在開發進行過程,開發人員不用管資料庫之類的問題,Entity Framework會進行處理,開發人員只要專注處理POCO與邏輯程式碼身上。

多對多關係?

多對多關係(Many-To-Many)是指資料兩者之間的關係是多對多,例如,醫生與病人,一個醫生會醫治多個病人,一個病人依病情不同也會有多個醫生來治療(會診即是一種),這種關係在資料庫領域稱多對多關係(Many-to-Many)。

有一點點資料庫經驗的人員都知道,實務上在資料庫中是沒有多對多資料表,多對多關係到了資料庫裡會化成三張資料表,分別建立成one-to-many與one-to-many的關係,以上例說明:「醫生(one)-to-醫生病人(many)」與「病人(one)-to-醫生病人(many)」,所以會有「醫生資料表」「醫生病人資料表」「病人資料表」三張資料表,中間透過「醫生病人資料表」來串接多對多關係。

ASP.NET MVC實作Code First Many-to-Many Relationship

以下我們透過ASP.NET MVC [4|5]專案來實作一次Code First的多對多關係。我們模擬的關係是「開發人員-to-專案」,一位開發人員可以同時接手多個專案,一個專案同時有多個開發人員進行開發。