예제 #1
0
        public async Task <IActionResult> GetProductSubcategories(Int32?pageSize = 10, Int32?pageNumber = 1)
        {
            var response = new ListResponse <ProductSubcategoryViewModel>();

            try
            {
                // Get query
                var query = ProductionRepository.GetProductSubcategories();

                // Set information for paging
                response.PageSize   = (Int32)pageSize;
                response.PageNumber = (Int32)pageNumber;
                response.ItemsCount = await query.CountAsync();

                // Retrieve items
                var list = await query
                           .Paging((Int32)pageSize, (Int32)pageNumber)
                           .ToListAsync();

                // Set model for response
                response.Model = list.Select(item => item.ToViewModel());

                response.Message = String.Format("Total of records: {0}", response.Model.Count());
            }
            catch (Exception ex)
            {
                response.DidError     = true;
                response.ErrorMessage = ex.Message;
            }

            return(response.ToHttpResponse());
        }