У нас есть многоуровневое приложение, в котором все репозитории основаны на (родном) базовом классе GenericRepository (где T является объектом в модели), который предоставляет такие методы, как GetContext(), GetObjectSet() и скоро. Мы разрешаем хранилищам, которые наследуют это для доступа к контексту, поскольку они должны вызывать Include(), поскольку мы передаем данные через службу WCF, поэтому нужно загружать все связанные с ними объекты с нетерпением.Можно ли перехватить Entity Framework при загрузке данных из базы данных?
Все наши объекты реализуют интерфейс, обладающий активным свойством bool, и то, что мы хотим сделать, это перехват выполнения запроса и фильтрация по свойству Active, так что любой запрос возвращает только объекты, где это установлено к истине.
Можно ли это сделать? В Lightswitch, который построен на EF, есть событие, которое вы можете захватить, которое срабатывает прямо в глубинах выполнения запроса и позволяет вам выполнять такую фильтрацию. Я не могу ничего найти в самом EF, который позволяет это.
У вас есть идеи? Спасибо
Привет, Николас, спасибо за ответ. Я не знал об этом EF5. Я недостаточно глубоко вникнул в это, чтобы сказать наверняка, но похоже, что это может быть даже в некоторых версиях v4.x. Во всяком случае, кроме того, что некоторые проблемы вызывают самообучающиеся объекты, это похоже на ответ. Еще раз спасибо. –
@AvrohomYisroel Glad Я мог бы помочь :) –