public async Task <PagedResponse <Link> > GetHomePageLinks(int?pageNumber) { var links = _dbContext.Links .Include(u => u.User) .Include(v => v.Votes) .ThenInclude(u => u.User) .Where(l => l.UploadDate >= DateTime.Now.AddDays(-5)) .OrderByDescending(l => l.Points); var pageSize = 100; return(await PagedResponse <Link> .CreateAsync(links.AsNoTracking(), pageNumber ?? 1, pageSize)); }
public async Task <PagedResponse <Confession> > GetConfessionsAsync(PaginationQuery paginationQuery = null) { var confessions = _db.Confessions.OrderByDescending(c => c.CreatedDate); // if (paginationFilter == null) // { // return await confessions; // } //var skip = (paginationFilter.PageNumber - 1) * paginationFilter.PageSize; //return await _db.Confessions.Skip(skip).Take(paginationFilter.PageSize).ToListAsync(); return(await PagedResponse <Confession> .CreateAsync(confessions, paginationQuery.PageNumber, paginationQuery.PageSize)); }
public async Task <PagedResponse <Link> > GetUserLinks(int?pageNumber) { var userEmail = _httpContextAccessor.HttpContext.User.Identity.Name; var user = await _userManager.FindByEmailAsync(userEmail); var pageSize = 100; var links = await PagedResponse <Link> .CreateAsync(_dbContext.Links .Include(u => u.User) .Include(v => v.Votes) .ThenInclude(u => u.User) .Where(l => l.User == user) .OrderByDescending(l => l.Points), pageNumber ?? 1, pageSize); return(links); }