是否有一種方法可以在EF正在運行的所有查詢中通用添加where子句?我希望所有的查詢與運行「entity.Active ==真」,例如EF 6 - 注入where子句
0
A
回答
0
最簡單的方法(不實現QueryTranslator接口)是爲您的上下文這樣
public static IQyertable<YourEntity> OnlyActiveEntities(this YourDbContext context, Action<DbSet<YourEntity>> setConfigurator = null)
{
var dbSet = context.Set<YourEntity>();
setConfigurator?.Invoke(dbSet);
return context.Set<YourEntity>().AsQueriable().Where(entity => entity.Active == true);
}
1
一些第三方創建擴展方法庫允許過濾查詢:Entity Framework Filter Library List
免責聲明:我的項目Entity Framework Plus
維基的主人:EF +查詢過濾器
此功能正是你要找的。您可以添加全局過濾器來過濾所有查詢。
實施例:
// using Z.EntityFramework.Plus; // Don't forget to include this.
QueryFilterManager.Filter<ISoftDelete>(q => q.Where(x => x.IsActive));
相關問題
- 1. 動態使用WHERE子句注入PetaPoco
- 2. 動態WHERE子句和SQL注入
- 3. Rails:加入where where子句
- 4. MySQL加入where where子句
- 5. 加入where子句
- 6. EF 4 Dynamic Where子句不起作用
- 7. EF核心1.0.0鏈接Where子句
- 8. TSQL Where子句
- 9. 使用加入where where子句
- 10. 加入兩個表格Where Where子句
- 11. sql加入where子句
- 12. Linq Multi加入Where子句
- 13. sql加入where子句
- 14. Linq Group加入Where子句
- 15. EF 6數據註釋
- 16. EntityDataSource Where Where子句
- 17. Linq Lambda Where子句在where子句中
- 18. 如何在EF 5.0的where子句中使用多個語句?
- 19. where子句中插入語句
- 20. 左加入含where子句INSIDE加入
- 21. Java:用戶提供where子句:如何防止SQL注入?
- 22. 動態TSQL中的WHERE子句並阻止SQL注入
- 23. 應用where子句
- 24. 在where子句
- 25. NULL WHERE子句
- 26. 與where子句
- 27. 在WHERE子句
- 28. SQL Where子句
- 29. WHERE子句中
- 30. MongoDB where子句