Performance 如何在专业项目中处理TPC继承映射的多态关联?

Performance 如何在专业项目中处理TPC继承映射的多态关联?,performance,entity-framework,architecture,table-per-type,table-per-subclass,Performance,Entity Framework,Architecture,Table Per Type,Table Per Subclass,在使用实体框架设计和开发一个以数据为中心的项目时,我花了太多的时间来找到一种方法来完成以下任务之一,但没有遇到任何实际问题 寻找一种替代方法来实现多态关联,这种多态关联不能与EF中的TPC继承映射一起实现-因为这种继承映射非常适合我的模型的逻辑设计,或者 找到一种改善TPT继承映射性能差的方法,在我看来,这是TPC唯一实用的替代方法。 我认为,从数据库设计和数据验证的角度来看,TPH继承映射没有意义 此外,由于项目的其他部分几乎完全依赖于Microsoft产品,因此我不打算切换到其他ORM框架,

在使用实体框架设计和开发一个以数据为中心的项目时,我花了太多的时间来找到一种方法来完成以下任务之一,但没有遇到任何实际问题

寻找一种替代方法来实现多态关联,这种多态关联不能与EF中的TPC继承映射一起实现-因为这种继承映射非常适合我的模型的逻辑设计,或者 找到一种改善TPT继承映射性能差的方法,在我看来,这是TPC唯一实用的替代方法。 我认为,从数据库设计和数据验证的角度来看,TPH继承映射没有意义

此外,由于项目的其他部分几乎完全依赖于Microsoft产品,因此我不打算切换到其他ORM框架,如NHibernate

现在,我想请那些专业软件开发人员和可能面临此问题的人,就任何其他可用的选项/解决方案向我提供建议。在专业设计/开发任务中,这个问题通常是如何解决的


提前感谢任何指导

我只是随便玩玩,似乎能够实现各种多态关联。我发现有一件事很有帮助,那就是确保所有外键和关系都是显式定义的,这将避免代码首先可能遇到的任何歧义。Julie Lerman在她的书Code First中确实提到应该定义外键,否则可能会发生关联映射的意外情况

希望这有帮助,如果没有,让我们有一些代码,并说什么你不能得到工作


不能与TPC继承映射一起实现的Cheers

为什么不能?您可以为每个关联添加一个子类,如UserComments、InvoiceComments等。。。如果评论是多态相关的,或者你有pol。与子类型类的关系?请看我明白了,是的。又被缩写搞糊涂了。我在TPH映射中使用了PA,这非常有效,但只是因为我可以使用子类来区分数据的所有者,就像我上面所说的那样。