我正在使用實體框架與SQL Server。我有兩個表之間的多對多關係。我已經創建了一個只有2個表的主鍵字段的連接表。在設計器中,2個表現在具有另一個導航屬性,返回類型爲Collection of X,其中X是另一個實體。到目前爲止,所有事情都應該如此。該設置看起來正確。如何創建和更新與EF的多對多關係
Task TaskProducts Product
========== ============ =======
TaskID TaskID ProductID
Description ProductID Name
並不是每個任務都會有一個產品或產品與之相關聯。當該任務沒有關聯產品時,我將什麼分配給任務表的產品導航屬性?
當我確實擁有產品實體時,是否會使用產品實體構建一個EntityCollection集合,並將其分配給Task實體上的Products導航屬性?
在對Task實體的Products導航屬性進行更新(添加,刪除和更改)時,是否像處理其他集合一樣使用它?有什麼特別的事情要注意嗎?
我會對在Entity Framework中處理多對多關係的任何幫助感興趣。
編輯(11/17/2009)
有一件事我學到的是一個多對多的關係工作,連接表,連接表中的兩個字段需要被標記作爲主鍵;
雖然這個鏈接的文檔沒有專門處理多對多的關係,但是他們被提及並且信息是有用的。如何使用集合並且不關心管理連接表真的很不錯。 – DaveB 2009-11-17 17:32:11