我有一個名爲Address的表格的遺留數據庫。現在兩個其他表可以分配地址信息。要確定它來自哪個表,有一個SourceID字段。如果SourceID是1,那麼它與第一個表相關聯,如果它是2,則它是第二個表的地址信息。實體框架條件映射
此遺留數據庫沒有在數據庫上定義的任何外鍵約束,並且它不能被添加。
我想知道如果我使用實體框架來創建將具有此關聯的模型。在表1中可以有一個實體具有導航來解決信息(條件是SourceID = 1)並且與第二個表相同。
我試過創建了條件映射並設置了「當SourceID = 1時」我也從列映射中刪除了映射,因爲列只能映射一次。當我嘗試編譯,我得到以下錯誤:
錯誤3004:問題在映射片段開始行683:否屬性中指定映射地址組Address.SourceID。具有密鑰(PK)的實體在以下情況下不會往返:實體是類型[型號。地址]
感謝您的幫助!
如果我想更進一步,該怎麼辦?如果我的表上有第二個條件定義了一個類型ID會怎麼樣?我嘗試過從新類型繼承,然後添加一個新條件,使TypeId = 2。查看SQL Profiler,這不會在它創建的SQL中保留這兩個條件。有什麼辦法可以有多級TPH? –