TPT实体派生自实体框架6中的TPH基类?

时间:2015-01-21 19:32:06

标签: sql-server entity-framework entity-framework-6 ef-database-first tph

我有一个使用EF6数据库的项目首先映射到SQL数据库。这是全新的,所以我控制EF模型以及数据库模式。

我目前有一张桌子,为了简单起见,我称之为“车辆”。我使用一个鉴别器列来获取实体Car和Truck的子类。一切正常。

现在我需要进行软删除'并将任何已删除的车辆移至VehicleHistory表。 (尝试这个w / EF之后我可能会使用SQL事务)。这需要是可审阅的,所以我也需要映射这个历史表,但我想将它保留在继承层次结构中,以便在其他类中轻松重用。

我的想法是创造' vehiclecurrent'和' vehiclehistory'用于共享列的车辆的FK&#39的表格。然后我会在EF中使用TPT来获取来自我的TPH类的carcurrent' carhistory'等...(例如carhistory-> car-> vehicle)。这不起作用,我得到错误3034:"具有不同键的实体被映射到同一行"

所以我的问题基本上是如何解决这个问题的?这种方法是否有效,或者有其他方法可以实现这一目标吗?谢谢!

0 个答案:

没有答案