1
我來自Java,現在正在使用C#和Entity Framework將現有系統實現到數據庫中。如何使用Entity Framework和Fluent API映射覆雜的一對多
由於我不能在這裏顯示實際的類,我試圖做一個與我的問題相同的例子,如下所示。 我有一個Company
其中有幾個屬性列表Person
。當我使用EF將其轉換爲數據庫時,我爲每個Person
實例獲取一個新的外鍵列。
Company
public GUID CompanyID {get,set}
public List<Person> Employee{get,set}
public List<Person> Janitors {get,set}
public List<Person> Students {get,set}
public List<Person> Professors {get,set}
Person
public GUID CompanyID {get,set}
我想人的數據庫方案是
|Column 1 | Column 2 | Column 3 | Company_FK |
----------------------------------------------
但現在它更像是這
| Column 1 | Column 2 | Column 3 | Company_ID | Company_ID1 | Company_ID2 ...
--------------------------------------------------------------------------
null reference null
null reference null
reference null null
~~~~~~~~~~~~~~~~~~~~~~etc~~~~~~~~~~~~~~~~~~
所有這些COMPANY_ID *列具有相同的公司表引用,因此我相信只有一列用於此參考並不是不可能的,然後將所有這些參考文獻都刪除。
我需要一個Fluent API解決方案,而不是數據註解。
它是成功的,但我得到這個錯誤消息「到數據庫的更改被成功提交,但出現錯誤而更新對象上下文的ObjectContext的可能。處於不一致的狀態內部異常消息:發生了參照完整性約束衝突:定義參照約束的屬性值在關係中的主體和從屬對象之間不一致。但是你的代碼工作,我很感謝你的幫助@JustAnotherUserYouMayKnow – jonas 2013-02-21 11:52:22