public Paginacion( string ordenarPor = null, DirOrden direccionOrden = DirOrden.Asc, int pagina = 1, int itemsPorPagina = 0) { OrdenarPor = ordenarPor; DireccionOrden = direccionOrden; Pagina = pagina; ItemsPorPagina = itemsPorPagina; }
public ActionResult Listar(string filtro, int pagina = 1, string ordenarPor = "Id", DirOrden dirOrden = DirOrden.Asc) { return(View("Listar", ListQuery(filtro, pagina, ordenarPor, dirOrden))); }
private ListaPaginada <SubCategoriaDto> ListQuery(string filtro, int pagina, string ordenarPor, DirOrden dirOrden) { var paginacion = new Paginacion(ordenarPor, dirOrden, pagina, 10); return(Negocio.ListarSubCategoriasPaginado(filtro, paginacion)); }
private ListaPaginada <UsuarioDto> ListQuery(string filtro, int pagina, string ordenarPor, DirOrden dirOrden) { var paginacion = new Paginacion(ordenarPor, dirOrden, pagina, 10); var usersQuery = UserManager.Users; Expression <Func <Usuario, bool> > expresionFiltro = null; if (!string.IsNullOrEmpty(filtro)) { filtro = filtro.Trim(); expresionFiltro = x => x.Nombre.Contains(filtro) || x.Apellido.Contains(filtro) || x.UserName.Contains(filtro); } if (expresionFiltro != null) { usersQuery = usersQuery.Where(expresionFiltro); } int itemsTotales = usersQuery.Count(); if (paginacion.OrdenarPor != null) { usersQuery.OrderBy(paginacion.OrdenarPor, paginacion.DireccionOrden == DirOrden.Asc); } usersQuery = usersQuery.Skip((paginacion.Pagina - 1) * paginacion.ItemsPorPagina).Take(paginacion.ItemsPorPagina); var itemsDto = Mapper.Map <IList <UsuarioDto> >(usersQuery.ToList()); return(new ListaPaginada <UsuarioDto>(itemsDto, paginacion.Pagina, paginacion.ItemsPorPagina, itemsTotales)); }
private ListaPaginada <RolDto> ListQuery(string filtro, int pagina, string ordenarPor, DirOrden dirOrden) { var paginacion = new Paginacion(ordenarPor, dirOrden, pagina, 10); var rolesQuery = RoleManager.Roles; Expression <Func <Rol, bool> > expresionFiltro = null; if (!string.IsNullOrEmpty(filtro)) { filtro = filtro.Trim(); expresionFiltro = x => x.Name.Contains(filtro); } if (expresionFiltro != null) { rolesQuery = rolesQuery.Where(expresionFiltro); } int itemsTotales = rolesQuery.Count(); if (paginacion.OrdenarPor != null) { rolesQuery.OrderBy(paginacion.OrdenarPor, paginacion.DireccionOrden == DirOrden.Asc); } rolesQuery = rolesQuery.Skip((paginacion.Pagina - 1) * paginacion.ItemsPorPagina).Take(paginacion.ItemsPorPagina); var itemsDto = Mapper.Map <IList <RolDto> >(rolesQuery.ToList()); return(new ListaPaginada <RolDto>(itemsDto, paginacion.Pagina, paginacion.ItemsPorPagina, itemsTotales)); }