public List <EscolaViewModel> Search(EscolaSearchModel searchModel) { var escolas = EscolaRepository.GetAll(); return(Filter(escolas, searchModel).Select(selectClauseEscola).ToList()); }
private IQueryable <Escola> Filter(IQueryable <Escola> baseQuery, EscolaSearchModel searchModel) { if (!string.IsNullOrEmpty(searchModel.Nome)) { baseQuery = baseQuery.Where(x => x.Nome.Contains(searchModel.Nome)); } if (!string.IsNullOrEmpty(searchModel.Cidade)) { baseQuery = baseQuery.Where(x => x.Cidade.Contains(searchModel.Cidade)); } if (!string.IsNullOrEmpty(searchModel.Diretor)) { baseQuery = baseQuery.Where(x => x.Diretor.Contains(searchModel.Diretor)); } return(baseQuery); }
public AssociationViewModel <EscolaSearchModel, EscolaViewModel> GetAssociationViewModel(EscolaSearchModel searchModel) { var escolas = Search(searchModel); return(new AssociationViewModel <EscolaSearchModel, EscolaViewModel> { Objects = escolas, TotalCount = escolas.Count, SearchModel = searchModel }); }
// GET: Escola public ActionResult Index(EscolaSearchModel searchModel) { var viewModel = this.EscolaService.GetAssociationViewModel(searchModel); return(View(viewModel)); }