【发布时间】:2014-09-12 08:54:41
【问题描述】:
我正在使用 EF 6,并使用代码优先迁移。
我之前有一个表Requests,它只包含一种类型的请求,现在我开始在其中添加不同类型的请求,并且总是在使用 LINQ 查询它时,我必须这样做:
_repository.Requests.Where(r => r.Type == Type.BestRequest &&......)
_repository.Requests.Where(r => r.Type == Type.AwesomeRequest &&......)
在我的DbContext 中,我有这个DbSet,它总是返回:
public DbSet<Request> Requests { get; set; }
有没有办法预先过滤请求,通过这样做::
_repository.BestRequests.Where(r => ......)
但我仍然希望在数据库中有一个名为 Requests 的表。
【问题讨论】:
-
您是否使用在数据库中具有鉴别器列的 TPH 继承?
-
不,我没有使用它。
-
你已经有了一个仓库。为什么不提供
_repository.BestRequests之类的属性? -
@YuliamChandra 类型只是一个枚举。
-
@GertArnold 我不确定我是否理解。那么
BestRequests返回什么?我只有Requests表,没有名为BestRequests的数据库表
标签: c# .net asp.net-mvc linq entity-framework