我想要首先爲EF代碼設計類的目的來模擬以下關係。對非主鍵關係建模
Program
表:
ProgramID - PK
ProgramName
ClusterCode
樣本數據
ProgramID ProgramName ClusterCode
--------------------------------------
1 Spring A
2 Fall A
3 Winter B
4 Summer B
Cluster
表:
ID
ClusterCode
ClusterDetails
樣本數據:
ID ClusterCode ClusterDetails
---------------------------------
1 A 10
2 A 20
3 A 30
4 B 20
5 B 40
我需要將Program
表加入Cluster
表,以便我可以獲取每個程序的羣集詳細信息列表。
的SQL將
Select
from Programs P
Join Cluster C On P.ClusterCode = C.ClusterCode
Where P.ProgramID = 'xxx'
注意,對於Program
表,ClusteCode
不是唯一的。
對於Cluster
表,既不是ClusterCode
也不是ClusterDetail
是唯一的。
我該如何建模,這樣我就可以利用導航屬性和代碼優先?
請加標記語言(C#或VB.NET或ETS)也最好是顯示映射在2個表上的類 – jfun 2015-01-26 22:57:28
因此,這不會回答你的問題,但這似乎更像是一個數據庫設計問題,而不是EF要解決的問題。爲什麼不使用ClusterID字段替換Program表的ClusterCode字段作爲Cluster表中的外鍵? – Fiddles 2015-01-26 23:27:21