Я использую Entity Framework за набором репозиториев.В репозиториях используются DTO вместо объектов сущностей, сгенерированных Entity Framework.Я использую AutoMapper для преобразования их туда и обратно.
У меня возникают трудности с выяснением, как сделать следующее:
Определение метода:
public IEnumerable<DTO.User> Get(Func<DTO.User, bool> whereClause)
Пример:
var users = userRepository.Get(usersWhere => usersWhere.PostCount > someNumber);
И я хотел бы иметь возможность передать это Func<T, bool>
в Entity Framework следующим образом:
var users = entityFramework.Users.Where(whereClause);
Очевидно, что это не будет построено, потому чтометод .Where () ожидает Entities.User
, а не DTO.User
.
Есть ли способ преобразовать Func<DTO.User, bool>
в Func<Entities.User, bool>
?