2016-11-16 1 views

답변

0

(QueryTranslator 인터페이스를 구현없이) 가장 간단한 방법은 "== entity.Active 사실"모든 쿼리가 실행하고자하면이

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

면책 조항 : 라이브러리는 필터링 쿼리를 허용 EF + 검색어 : 내가 프로젝트 Entity Framework Plus

위키의 소유자 해요 필터

이 기능은 사용자가 찾고있는 기능입니다. 모든 쿼리를 필터링하기위한 전역 필터를 추가 할 수 있습니다.

예 :

// using Z.EntityFramework.Plus; // Don't forget to include this. 

QueryFilterManager.Filter<ISoftDelete>(q => q.Where(x => x.IsActive));