是否有可能为实体框架对象上下文添加一种全局过滤器?比如拥有一个ObjectMaterialized,它可以返回一个指示是否在结果集中包含给定的对象。实体框架查询过滤器
1
A
回答
2
不,这是不可能的。实体框架及其内置的提供者不支持全局过滤器。
可以实现与简单的包装一些基本的过滤:
public class MyContext : ObjectContext
{
private ObjectSet<MyEntity> myEntities;
public Expression<Func<MyEntity, bool>> GlobalMyEntityFilter { get; set; }
public IQueryable<MyEntity> MyEntities
{
get
{
if (GlobalMyEntityFilter != null)
{
return myEntities.Where(GlobalMyEntityFilter);
}
return myEntities;
}
}
}
+0
因此,EF和RIA服务的组合与WCF数据服务中的QueryInterceptors没有任何相似之处? – BowlingForGreens
+0
我不确定RIA服务,但EF本身没有任何此类功能。 QueryInterceptors特定于WCF数据服务。 –
1
你试图做这样的事情只显示活动的客户?如果是这样,您可以使用继承并创建一个ActiveCustomer类型并在映射中添加一个条件为Status == "Active".
然后将您的Customer类型设置为Abstract Base Class以防止直接实例化。然后你可以查询你的模型Customers.OfType<ActiveCustomer>().
相关问题
- 1. 过滤儿童实体框架查询
- 2. 与实体框架的过滤器查询
- 3. 过滤器“包含”在实体表框架查询
- 4. 实体框架高效查询过滤器
- 5. 实体框架和继承过滤器
- 6. 实体框架多对多过滤器
- 7. 实体框架过滤器子集合
- 8. 实体框架核心过滤器DbSet
- 9. 实体框架 - 过滤查询可空连接密钥
- 10. 查询在实体框架
- 11. 实体框架查询
- 12. 实体框架查询
- 13. 查询在实体框架
- 14. 实体框架LINQ查询
- 15. 查询实体框架4
- 16. 在实体框架查询
- 17. 查询在实体框架
- 18. 实体框架查询#1
- 19. 实体框架查询
- 20. 查询在实体框架
- 21. 实体框架LIKE查询
- 22. 实体框架查询XML
- 23. 实体框架查询设计器
- 24. 实体框架4.1 - 用过滤器覆盖实体(DBSet)
- 25. C#实体框架 - LINQ与实体查询子查询
- 26. 实体框架查询装饰器立即发送查询
- 27. 实体框架查询包含实体集合的子实体
- 28. 如何在实体框架中过滤“包含”实体?
- 29. 实体框架,软删除和查询
- 30. 动态查询与实体框架4
你可以发布什么样的例子以及如何达到这个目的吗? –