2012-05-29 34 views
1

我有一個要求,建立一個稍有不同尋常的數據模型,但我有困難說服實體框架代碼優先爲我繪製它。實體框架代碼優先使用TPT繼承和組合鍵

我有兩個實體 - 'A'和'B'。

'B'是'A'類型,這就是爲什麼我試圖讓繼承工作。

但是,可能存在多個版本的'B'。

我想通過在'A'和'B'的每個表中有一個共享的ID列,但是'B'也有一個'版本號'字段,它與ID。

所以 - 這將是一個一對多的繼承類型的安排。

最終,這樣做的目標是能夠檢索特定的'B'實體,並且它還包含相關'A'實體的所有屬性和方法,而不必通過另一個對象。

任何想法都會很棒。

感謝,在EF 克里斯

回答

1

繼承始終是一個對一個。如果你有一對多,你必須把它作爲關係來處理,或者建立你自己的中間層,這會隱藏你自己的域模型(它將從EF中獲取相關對象並創建你自己的繼承對象)來隱藏EF實現。

+0

我懷疑可能是這種情況 - 感謝您的確認! :O) –