public async Task <PaginatedList <BlogPost> > HandleAsync(GetBlogPostsForHomePageQuery query) { var posts = _context.BlogPosts .Where(bp => bp.PublishOn < DateTime.Now && bp.Public == true) .OrderByDescending(bp => bp.PublishOn) .Include(bp => bp.Author) .Include(bp => bp.Comments); return(await PaginatedList <BlogPost> .CreateAsync(posts, query.CurrentPage, query.PageSize)); }
public async Task <IActionResult> Index(int?page) { var curPage = page ?? 1; var gbpfhp = new GetBlogPostsForHomePageQuery { CurrentPage = curPage, PageSize = _settings.PostsOnHomePage }; var recentPosts = await _qpa.ProcessAsync(gbpfhp); var categories = await _qpa.ProcessAsync(new GetCategoriesQuery()); var vhvm = new HomeViewModel { Categories = categories, RecentPosts = recentPosts }; return(View(vhvm)); }