我在EF中使用繼承,感覺它引發的問題多於幫助,特別是將表聚合綁定到數據網格。我給出了一部分模型的屏幕。我想要做的是將FREQUENCY
綁定到數據網格,並使網格字段基於FREQ_POOL
(這是一個基類)的類型。例如,如果我想要一個POOL_IA
數據網格,那麼它將具有這些字段以及FREQUENCY
中的幾個字段。我使用繼承是因爲它是從OO的角度出發的。另一種方法是隻有很多0..1的關係表明FREQ_POOL
有一個擴展的能力,但是我沒有任何限制,說FREQ_POOL
只能是一種類型。什麼是更好的設計來實現這一點,並使數據綁定更容易?感謝您的任何指導。EF-替代繼承
Q
EF-替代繼承
2
A
回答
0
一種方法可以創建一個數據網格從FREQ_POOL
獲取數據,然後把所有的POOL_IA
變量(或使用反射派生類的所有屬性)FREQUENCY
和。
如果您真的不需要在綁定數據網格時使用對象並且可以使用DataSet,那麼另一種方法可能是通過Context.Entry方法即時獲取所有屬性和條目的值,並將其放入DataSet中動態。
+0
這是有道理的。但是,我擔心新的行創建過程會很複雜,因爲爲了創建新行,我必須手動執行所有操作(如果是這種情況,這很好)。 –
+0
這就是機會成本:) – kkocabiyik
相關問題
- 1. 繼承EF代碼優先
- 2. C#EF繼承
- 3. Java:替代多重繼承
- 4. .NET枚舉繼承替代
- 5. 停止EF繼承
- 6. EF代碼第一 - 繼承和關係
- 7. EF生成的代碼繼承
- 8. EF代碼中的繼承映射?
- 9. EF繼承/基類問題
- 10. EF繼承與布爾
- 11. EF繼承和主鍵
- 12. EF繼承與表拆分
- 13. Liskov替代原則與多繼承heirachies
- 14. 類表繼承CakePHP的替代?
- 15. 替代Rails單表繼承(STI)?
- 16. 在Go中嵌入代替繼承
- 17. 替代Django的具體繼承
- 18. 迭代器繼承和繼承*這個
- 19. 鏈接繼承的EF鑑別器
- 20. EF 5繼承查詢問題
- 21. .NET中的RIA服務和繼承EF
- 22. CodeFirst EF 4.1繼承 - 重命名PK/FK
- 23. EF 4.0泛型基於繼承
- 24. ADO EF代碼第一個泛型中間類繼承映射
- 25. EF代碼冷杉中的多繼承級別
- 26. 主鍵違例:使用EF代碼優先繼承
- 27. 問題與EF 4.1 TPH繼承映射與代碼首先
- 28. EF 5代碼第一次在類中使用繼承
- 29. 繼承EF代碼中的公共基類首先
- 30. EF代碼 - 第一繼承和主鍵問題
在那條路上,我個人結束了很多0/1關係而不是繼承。我從未困擾過試圖在數據庫約束級別強制執行「只有一種類型」,除了在父表上有一列指明它代表什麼,因此代碼有一種知道要檢索哪個子實體的方法。當然,表現要比繼承好得多。 – AaronLS
非常感謝。這很有道理。我希望在EF中使用繼承更容易。 –