public List <TEntity> GetAll(Expression <Func <TEntity, bool> > filter = null)
 {
     using (ReCapContext context = new ReCapContext())
     {
         return(filter == null?context.Set <TEntity>().ToList() : context.Set <TEntity>().Where(filter).ToList());
     }
 }
 public TEntity Get(Expression <Func <TEntity, bool> > filter)
 {
     using (ReCapContext context = new ReCapContext())
     {
         return(context.Set <TEntity>().SingleOrDefault(filter));
     }
 }