2010-11-28 104 views
17

我正在使用實體框架,並試圖將從數據庫表創建的實體與從數據庫視圖創建的實體相關聯。由於實體框架無法自動推斷數據庫表和視圖之間的關係,因此我使用實體設計器來構造實體之間的「關聯」。但是,如果外鍵是nullalbe類型,我會收到以下錯誤:實體框架:與可空字段關聯實體的問題

錯誤113:多重性在角色'Company'中的'UsersView'關係中無效。 因爲從屬角色中的所有屬性均可爲空,所以主體角色的多重性必須爲'0..1'。

在我的方案中,我在我的UsersView中有一個可空的CompanyId外鍵(即用戶可能沒有公司)。使用可空的外鍵創建關聯從來不是Linq 2 SQL的問題。有誰知道我可以在Entity Framework中解決這個問題嗎?

在此先感謝。

回答

24

我想你應該可以選擇公會,並在屬性面板中的多重設定設置爲0..1。這應該可以解決錯誤。

+0

謝謝戴夫。你的答案解決了我的問題。 – 2010-11-29 00:15:05

+0

+1,謝謝戴夫。你的回答也解決了我的問題:) – Homam 2011-07-28 07:04:17

3

我張貼這一點,因爲我碰到了同樣的錯誤手動創建在Visual Studio 2010中的模型設計的關聯,我場不允許空在數據庫中,但由於某種原因,在設計可空屬性該字段被設置爲(無)而不是真。我花了一段時間才弄清楚設計師爲什麼抱怨。一旦我手動更改字段的Nullable屬性,我試圖創建一個沒有任何錯誤的關聯。

我知道這並不能回答原來的問題,但我發現這個職位試圖解決我的問題,這是給予同樣的錯誤。