Entity framework EF-替换继承

Entity framework EF-替换继承,entity-framework,Entity Framework,我目前正在EF中使用继承,感觉它造成的问题比帮助的问题更多,特别是在将表聚合绑定到datagrid时。我已经给出了部分模型的屏幕。我试图做的是将FREQUENCY绑定到数据网格,并使网格字段基于FREQ\u POOL的类型(这是一个基类)。例如,如果我想要一个POOL\u IAdatagrid,那么它将包含这些字段,以及FREQUENCY中的几个字段。我之所以使用继承,是因为它从面向对象的角度出发。另一种方法是只使用大量的0..1关系来显示FREQ\u POOL具有扩展的能力,但是我没有任何约束

我目前正在EF中使用继承,感觉它造成的问题比帮助的问题更多,特别是在将表聚合绑定到datagrid时。我已经给出了部分模型的屏幕。我试图做的是将
FREQUENCY
绑定到数据网格,并使网格字段基于
FREQ\u POOL
的类型(这是一个基类)。例如,如果我想要一个
POOL\u IA
datagrid,那么它将包含这些字段,以及
FREQUENCY
中的几个字段。我之所以使用继承,是因为它从面向对象的角度出发。另一种方法是只使用大量的0..1关系来显示
FREQ\u POOL
具有扩展的能力,但是我没有任何约束条件说
FREQ\u POOL
只能是一种类型。要做到这一点并使数据绑定更容易,有什么更好的设计?谢谢你的指导


一种方法可能是创建一个数据网格,从
频率池
获取数据,然后将
频率池
的所有变量(或使用反射的派生类的所有属性)和
频率


如果您在绑定数据网格时确实不需要使用对象,并且能够使用数据集,那么另一种方法可能是使用Context.entry方法动态获取条目的所有属性和值,并将其动态地放入数据集。

一直以来,我个人最终得到了很多0/1关系,而不是继承关系。除了在父表上有一列指示它所表示的内容,以便代码能够知道要检索哪个子实体之外,我从来没有费心在数据库约束级别强制执行“仅一种类型”。当然表现比继承好得多。非常感谢。这很有道理。我希望在EF中更容易处理继承。这是有道理的。但是,我担心新行创建过程会很复杂,因为为了创建新行,我基本上必须手动执行所有操作(如果必须这样做的话,这很好)。