우리는 모든 저장소가 GetContext(), GetObjectSet() 및 GetObject()와 같은 메소드를 노출하는 (자체 제작 된) GenericRepository 기본 클래스 (여기서 T는 모델의 엔티티 임)를 기반으로하는 다중 계층 응용 프로그램을 가지고 있습니다. 곧. 우리는 WCF 서비스를 통해 데이터를 전달할 때 Include()를 호출해야하므로 컨텍스트에 액세스 할 수있는 저장소를 허용하므로 관련된 모든 엔터티를 열심히로드해야합니다.데이터베이스에서 데이터를로드 할 때 Entity Framework를 가로채는 수 있습니까?
우리의 모든 엔티티는 활성 bool 속성을 가진 인터페이스를 구현합니다. 우리가 원하는 것은 쿼리의 실행을 차단하고 Active 속성을 필터링하여 모든 쿼리가이 속성이 설정된 엔티티 만 반환하도록합니다 사실로.
이 작업을 수행 할 수 있습니까? EF에 구축 된 Lightswitch에는 쿼리 실행의 깊이에서 바로 잡을 수있는 이벤트가 있으며 이러한 종류의 필터링을 수행 할 수 있습니다. 나는 이것을 허용하는 EF 자체에서 아무것도 찾을 수 없다.
누구나 아이디어가 있으십니까? 감사합니다.
안녕 니콜라스, 그리고 답장을 보내 주셔서 감사합니다. 나는 EF5에 관해 그것을 몰랐다. 나는 확실히 말할 정도로 깊이 파고 들지는 않았지만, v4.x의 일부 버전에서도 이런 모습을 보일 수 있습니다. 어쨌든, 이것은 몇몇 문제를 분류하는 것을 제외하고 이것은 자기 추적 엔티티를 야기했습니다. 이것은 답변과 같습니다. 다시 한번 감사드립니다. –
@AvrohomYisroel 기꺼이 도와 드릴 수 있습니다 :) –