private IHttpActionResult getProduct(string slug, string productBadge, [FromUri] CategoryPageParameterModel parameter) { var pagination = new PaginationMetadataModel() { currentPage = parameter.pageNumber, pageSize = parameter.pageSize }; var filter = new CategoryPageFilterModel() { categorySlug = slug, productBadge = productBadge, priceMin = parameter.priceMin, priceMax = parameter.priceMax, sort = parameter.sort }; var products = _service.getProducts(filter, ref pagination); if (products == null || products.Count == 0) { return(NotFound()); } // Setting Header HttpContext.Current.Response.Headers.Add("Access-Control-Expose-Headers", "X-Paging-Headers"); HttpContext.Current.Response.Headers.Add("X-Paging-Headers", JsonConvert.SerializeObject(pagination)); // Returing List of product Collections return(Ok <List <ProductCardModel> >(products)); }
/// <summary> /// Lấy tất cả sản phẩm theo bộ lọc /// </summary> /// <param name="filter"></param> /// <param name="pagination"></param> /// <returns></returns> public List <ProductCardModel> getProducts(CategoryPageFilterModel filter, ref PaginationMetadataModel pagination) { var productFilter = new ProductFilterModel() { categorySlug = filter.categorySlug, productBadge = filter.productBadge, productSort = filter.sort, priceMin = filter.priceMin, priceMax = filter.priceMax }; return(_product.getProducts(productFilter, ref pagination)); }