假设我有一个 table+class A
,另一个 table+classAType
代表不同类型的A
,以及一个 table+classB
继承自A
.
B
是某种类型的A
,但它太复杂了,无法A
在数据级别与其他类型的 相适应,并且需要在模式级别拥有自己的表 - 当然它是自己的类。
B
仍然是 的一种A
,所以我想在AType
表示中有一个记录B
,并且type
归档在A
记录中实际上是B
s 指向该记录AType
。我还希望能够添加更多继承自的表+类A
,并对其 PK 进行硬编码。
现在,如果我直接使用 SQL,我会A
为 PK 的继承者创建负值记录。这样,AType
在数据级别添加的具有正 PK 的新 s 将永远不会与硬编码模式级别的冲突,并且作为一个很好的奖励,我可以很容易地分辨出哪些记录A
是硬类型的,哪些是软类型 - 无需查看AType
。
我是 Entity Framework 的新手,所以我不想在尝试传统方式之前应用黑客式的解决方案。那么在实体框架中解决这个问题的惯例是什么?