Exemple #1
0
        //The id parameter will represent the page number
        public async Task <IActionResult> Index(int?id)
        {
            #region Comments
            //List<Product> products = ProductDb.GetProducts(context);

            //null coalescing operator, This is an alternative
            //int pageNum = id ?? 1;
            #endregion

            //Conditional/ternary operator;
            int       pageNum  = (id.HasValue) ? id.Value : 1;
            const int PageSize = 3;

            List <Product> products = await ProductDb.GetProductsByPage(context, pageNum, PageSize);

            //ViewBag/ViewData
            //ViewBag.MaxPage = 2;
            int maxPage  = ProductDb.GetMaxPage(context, PageSize);
            int currPage = pageNum;

            var model = new ProductIndexViewModel(products, maxPage, currPage);

            return(View(model));
        }