【发布时间】:2017-04-06 04:30:29
【问题描述】:
我们需要在我们的应用程序中添加一个新功能,例如对于我们的 DbContext 在其 DbSets 上执行的 SELECT 查询,例如在调用 MyDbContext.Users 或 MyDbContext.Students 等时(User 和 Student 继承自 BaseEntity 类,其中包括一个属性 IsActive),我们将能够拦截它们,检查实体是否属于此基本类型 BaseEntity,并以某种方式修改查询,例如添加 where 子句来检查 IsActive 是否为真。我试图研究 IDbCommandInterceptor 接口,但它的方法,包括可能与我相关的方法,ReaderExecuting,拦截在数据库上执行的各种 SELECT 语句,而不仅仅是 MyDbContext 的数据库集。
我怎样才能以正确的方式做到这一点?
谢谢,阿希隆
【问题讨论】:
标签: c# entity-framework-6