public PaginacaoVO <Voto> Get(string query = null) { Filtro filtro; if (string.IsNullOrEmpty(query)) { filtro = new Filtro(); } else { filtro = JsonConvert.DeserializeObject <Filtro>(query); } if (filtro.Pagina == 0) { filtro.Pagina = 1; } if (filtro.PorPagina == 0) { filtro.PorPagina = 25; } PaginacaoVO <Voto> vo = this.VotoService.Paginando(filtro); return(vo); }
protected static PaginacaoVO <T> Paginacao(Filtro filtro, IEnumerable <T> query) { PaginacaoVO <T> vo = new PaginacaoVO <T>(); vo.PaginaAtual = filtro.Pagina; vo.PorPagina = filtro.PorPagina; vo.Total = query.Count(); var paginas = (double)vo.Total / vo.PorPagina; vo.UltimaPagina = (int)Math.Ceiling(paginas); var skip = (vo.PaginaAtual - 1) * vo.PorPagina; vo.Dados = query.Skip(skip).Take(vo.PorPagina).ToList(); vo.Dados = query.ToList(); return(vo); }