내 .edmx 파일에 클라이언트라는 엔터티가 있습니다.기본 필터가 EF 인 엔터티
필자는 여러 번 linq querys를 실행해야하지만 모두 필터가 필요합니다 (active = 1로 말하십시오).
모든 쿼리에 where c.active == 1
을 갖고 싶지 않아 내 엔티티에 기본 필터가 적용되어 있다는 것이 더 합리적입니다. 할 수있는 일인가요?
또는 테이블 대신 엔티티의 기본 쿼리를 사용할 수 있습니까? (나는 데이터베이스의 첫 번째 접근에있어)
DB에 뷰를 만들고 뷰에 엔티티를 연결하는 다른 해결책이 있다는 것을 알고 있지만 그 중 하나도 필요하지 않습니다.
partial class DatabaseContext // same name as your generated context
{
IQueryable<Client> ActiveClients { get { return Clients.Where(c => c.active == 1); } }
}
을 그리고 코드 전반에 걸쳐 사용 :
해당 엔티티도 수정 하시겠습니까? 활성화되지 않은 클라이언트에 액세스 하시겠습니까? –
아니요,이 응용 프로그램의 경우 비활성 클라이언트가 존재하지 않는 것처럼 – Diego
가능한 [Entity Framework에 전역 필터를 적용하는 방법?] (http://stackoverflow.com/questions/2624597/how-to-apply-global- filter-on-entity-framework) –