我有以下對象實體模型:更新具有多對多關係的實體框架4模型,如何?
- 家
- 任務
- 任務類型
我有以下關係: 家< 1> ---- < >任務(一對多) 任務<> ---- < 1>任務類型(多對一)
現在,我想在House和TaskType之間添加多對多的關係,以設置哪些TaskType可用於房屋。
什麼是正確的方式在Visual Studio 2010中執行此操作,而不會丟失數據庫中的數據。
如果我在沒有生成任何數據庫的全新模型上執行此操作,它可以正常工作,但如果在第一次生成數據庫後嘗試添加它,我將全部鬆開我的數據,因爲生成SQL會刪除所有表。
如果我嘗試在名爲HouseTaskTypes的數據庫中手動創建一個包含兩列(House_Id和TaskType_Id)的表,並將外鍵指向House和TaskTypes,那麼當我從數據庫更新模型時,它看起來很奇怪。
我大概可以通過一些手動調整來實現它,但我想知道在現有的實體框架模型中添加多對多關聯/關係的正確方法。
所有的想法都讚賞!
這就是我一直在嘗試做的事情。我首先在兩個欄目中添加了一個「中間」表格,其中一個用於House_id,另一個用於TaskType_id。這是在SQL Server(2008 R2 Express)中完成的。 然後,我嘗試在Visual Studio中的實體模型設計器的「House」實體和「TaskType」實體之間添加多對多關聯。問題是我收到錯誤「沒有爲以下的實體集/關聯集指定映射」。 由於該表沒有出現在「模型瀏覽器 - >存儲 - >表/視圖」部分,我無法映射到它。 – Sverker84 2011-05-20 08:25:16
@ Sverker84編輯我的答案 – 2011-05-20 20:09:14