0
我們有一個現有的數據庫,我們想使用代碼優先的EF連接到。如何使用EF代碼優先實現此模式? [複雜複合鍵組合(多個外部表)]
我們所遇到的是在下列情況下一個問題......
**TABLE 1**
DebtorID Int PK (identity column)
Type Int PK FK (value would be '1' - FK to Table 4)
**TABLE 2**
CreditorID Int PK (identity column)
Type Int PK FK (value would be '2' - FK to Table 4)
**TABLE 3**
TransactionID Int PK
ParentID Int FK
ParentType Int FK
-----------------------
**TABLE 4**
Type Int PK (identity column)
Description Varchar(max)
表3有多個表的外鍵鏈接(表1,表2,等...)。鍵的類型列是唯一的。爲了允許這種情況,約束條件已經改變。
問:我們如何使用代碼優先實現此模式?我們已經查看了Data Annotations和Fluent API,但是除了改變數據庫模式(這將是一個令人頭疼的問題)之外,不能提出解決方案。
就目前而言,我們似乎只能鏈接到一個外表。
該解決方案還必須考慮其他表(此處未顯示),表1的主鍵等是主鍵的一部分。
我們的模式的真實世界視圖,以及代碼優先的問題。
當前模式: http://oi60.tinypic.com/2aeug4m.jpg
代碼優先模式: http://oi62.tinypic.com/9schmc.jpg
(如TABLE_1和TABLE_2導航性能)的任何配置我做既然你已經有一個數據庫,爲什麼不使用數據庫優先的方法 - http://msdn.microsoft.com/en-gb/data/jj206878.aspx?它應該爲你創造工作課程。 –
我們希望使用代碼優先的遷移部分來處理對數據庫模式的持續更新。我們也喜歡先創建類的概念,而不必在大型開發團隊中使用單個edmx文件。代碼是第一個錯誤的路要走嗎?我們是否應該首先使用數據庫,並且是否易於使用數據庫優先更新部署的數據庫並進行新的更改? –