【发布时间】:2017-09-24 02:11:20
【问题描述】:
因为我在我的数据库中支持软删除,所以我选择将我的Thing 实体子类型为ActiveThing 和DeletedThing...
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
// TPH (table-per-hierarchy):
modelBuilder.Entity<MyCorp.Biz.CoolApp.Thing>()
.Map<MyCorp.Biz.CoolApp.ActiveThing>(thg => thg.Requires("Discriminator").HasValue("A"))
.Map<MyCorp.Biz.CoolApp.DeletedThing>(thg => thg.Requires("Discriminator").HasValue("D"));
}
现在,我的 OData 端点(以前暴露了 Thing).. 我如何让它现在只暴露 ActiveThings?
【问题讨论】:
-
离题但是:我想知道,你的删除代码是什么?
-
如果你想看的话,我在here 上发布了我的 ODataController 的 DELETE 方法
-
谢谢。您使用的是 Raw Sql,这就是我的怀疑。我更喜欢允许完整 linq 到实体语法的解决方案:)。
标签: entity-framework asp.net-web-api2 odata tph