private async Task <DadosFiltrados> FiltrarEPaginar(ParametrosPaginacao parametrosPaginacao) { var artists = await _unitOfWork.Artists.GetAllAsync(); int total = artists.Count(); if (!String.IsNullOrWhiteSpace(parametrosPaginacao.SearchPhrase)) { // Dynamic LINQ artists = artists.Where("Name.ToLower().Contains(@0) ", parametrosPaginacao.SearchPhrase.ToLower()); } var artistsFiltered = artists.OrderBy(parametrosPaginacao.CampoOrdenado) .Skip((parametrosPaginacao.Current - 1) * parametrosPaginacao.RowCount) .Take(parametrosPaginacao.RowCount) .ToList(); DadosFiltrados dadosFiltrados = new DadosFiltrados(parametrosPaginacao) { rows = artistsFiltered.ToList(), total = total }; return(dadosFiltrados); }
//Metodo para filtrar dados e exibir tabela private DadosFiltrados FiltrarEPaginar(ParametrosPaginacao parametrosPaginacao) { var livros = db.Livros.Include(l => l.Genero); int total = livros.Count(); if (!String.IsNullOrWhiteSpace(parametrosPaginacao.SearchPhrase)) { int ano = 0; int.TryParse(parametrosPaginacao.SearchPhrase, out ano); decimal valor = 0; decimal.TryParse(parametrosPaginacao.SearchPhrase, out valor); livros = livros.Where("Titulo.Contains(@0) OR Autor.Contains(@0) OR AnoEdicao == (@1) OR Valor == (@2)", parametrosPaginacao.SearchPhrase, ano, valor); } //skip(5) - pular os primeiros(5) registros e Take(5) - mostrar os proximos (10) var livrosPaginados = livros.OrderBy(parametrosPaginacao.CampoOrdenado).Skip((parametrosPaginacao.Current - 1) * parametrosPaginacao.RowCount).Take(parametrosPaginacao.RowCount); DadosFiltrados dadosFiltrados = new DadosFiltrados(parametrosPaginacao) { rows = livrosPaginados.ToList(), total = total }; return(dadosFiltrados); }
private DadosFiltrados FiltrarEPaginar(ParametrosPaginacao parametrosPaginacao) { var livros = db.Livros.Include(l => l.Genero); int total = livros.Count(); if (!string.IsNullOrWhiteSpace(parametrosPaginacao.SearchPhrase)) { int ano = 0; int.TryParse(parametrosPaginacao.SearchPhrase, out ano); var valor = 0.0m; decimal.TryParse(parametrosPaginacao.SearchPhrase, out valor); livros = livros.Where("Titulo.Contains(@0) OR Autor.Contains(@0)" + " OR AnoEdicao == @1 OR Valor = @2", parametrosPaginacao.SearchPhrase, ano, valor); } var livrosPaginados = livros.OrderBy(parametrosPaginacao.CampoOrdenado).Skip((parametrosPaginacao.Current - 1) * parametrosPaginacao.RowCount).Take(parametrosPaginacao.RowCount).ToList(); DadosFiltrados dadosFiltrados = new DadosFiltrados(parametrosPaginacao) { rows = livrosPaginados.ToList(), total = total }; return(dadosFiltrados); }
public DadosFiltrados FiltrarEPaginar(ParametrosPaginacao parametrosPaginacao) { var generos = _repositorio.GetAll().ToList(); int total = generos.Count(); if (!String.IsNullOrWhiteSpace(parametrosPaginacao.SearchPhrase)) { generos = generos.Where(x => x.Nome.Contains(parametrosPaginacao.SearchPhrase)).ToList(); } var generosPaginados = generos.OrderBy(x => x.Nome).Skip((parametrosPaginacao.Current - 1) * parametrosPaginacao.RowCount).Take(parametrosPaginacao.RowCount); DadosFiltrados dadosFiltrados = new DadosFiltrados() { }; return(dadosFiltrados); }
private DadosFiltrados FiltrarEPaginar(ParametrosPaginacao parametrosPaginacao) { var pecas = db.Pecas.Include(p => p.Fornecedor); int total = pecas.Count(); if (!String.IsNullOrWhiteSpace(parametrosPaginacao.SearchPhrase)) { decimal valor = 0; decimal.TryParse(parametrosPaginacao.SearchPhrase, out valor); pecas = pecas.Where("Produto.Contains(@0) OR Valor = @1", parametrosPaginacao.SearchPhrase, valor); } var pecasPaginadas = pecas.OrderBy(parametrosPaginacao.CampoOrdenado).Skip((parametrosPaginacao.Current - 1) * parametrosPaginacao.RowCount).Take(parametrosPaginacao.RowCount); DadosFiltrados dadosFiltrados = new DadosFiltrados(parametrosPaginacao) { rows = pecasPaginadas.ToList(), total = total }; return(dadosFiltrados); }
public async Task <JsonResult> Listar(ParametrosPaginacao parametrosPaginacao) { DadosFiltrados dadosFiltrados = await FiltrarEPaginar(parametrosPaginacao); return(Json(dadosFiltrados, JsonRequestBehavior.AllowGet)); }
public JsonResult Listar(ParametrosPaginacao parametrosPaginacao) { DadosFiltrados dadosFiltrados = FiltrarEPaginar(parametrosPaginacao); return(Json(dadosFiltrados, JsonRequestBehavior.AllowGet)); }
public JsonResult Listar(ParametrosPaginacao parametrosPaginacao) { DadosFiltrados dadosFiltrados = FiltrarEPaginar(parametrosPaginacao); return(Json(dadosFiltrados)); }