private IHttpActionResult GetProducts(string slug, string[] slugList, PagingParameterModel pagingParameterModel) { var pagination = new PaginationMetadataModel() { currentPage = pagingParameterModel.pageNumber, pageSize = pagingParameterModel.pageSize }; var filter = new HomePageFilterModel(); if (String.IsNullOrEmpty(slug) && slugList != null && slugList.Length > 0) { filter.categorySlug = String.Empty; filter.categorySlugList = slugList.ToList(); } else { filter.categorySlug = slug; filter.categorySlugList = new List <string>(); } var products = _service.getProducts(filter, ref pagination); if (products == null) { 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 product theo bộ lọc /// </summary> /// <param name="filter"></param> /// <param name="pagination"></param> /// <returns></returns> public List <ProductCardModel> getProducts(HomePageFilterModel filter, ref PaginationMetadataModel pagination) { var productFilter = new ProductFilterModel() { categorySlug = filter.categorySlug, categorySlugList = filter.categorySlugList, productSort = filter.sort }; return(_product.getProducts(productFilter, ref pagination)); }