У меня следующая проблема.
Я хочу передать func как параметр, чтобы он мог варьироваться в операторе where.
private IEnumerable<User> GetUser(int cant, Func<User, bool> userFilter, Func<Client, bool> ClientFilter)
{
return (from dcu in
_db.All<User>().Where(userFilter)
join c in _db.All<Client>() on dcu.IdClient equals c.IdClient into temp
from cli in temp.DefaultIfEmpty().Where(ClientFilter)
select new {Usuer = dcu, Client = cli}).
Take(cant).Select(uc => _usersMapper.Map(uc.User, uc.Client)).AsEnumerable();
}
И функция должна выглядеть следующим образом
public void GetUsers ()
{
GetUser(50, u => u.Email.Contains("onemail@mail.com"), c=> true);
}
public void GetUsersFilterByClient ()
{
GetUser(50, u => true, c=> c.Password.Contains("MyPasssword"));
}