public IEnumerable <MissionEntity> GetAllByPredicate(Expression <Func <MissionEntity, bool> > f) { var visitor = new MyExpressionVisitor <MissionEntity, DalMission>(Expression.Parameter(typeof(DalMission), f.Parameters[0].Name)); var exp2 = Expression.Lambda <Func <DalMission, bool> >(visitor.Visit(f.Body), visitor.NewParameterExp); var mission = missionRepository.GetAllByPredicate(exp2).ToList(); return(mission.Select(m => m.GetBllEntity())); }