public GetFeaturedProductsResponse GetFeaturedProducts() { GetFeaturedProductsResponse response = new GetFeaturedProductsResponse(); response.Products = _productTitleRepository.FindAll().OrderByDescending(p => p.Price).ThenBy(p => p.Brand.Name).ThenBy(p => p.Name).Take(6).Select(p => _mapper.Map <ProductTitle, ProductSummaryView>(p)); return(response); }
private IEnumerable <ProductTitle> FindAllProductTitles() { lock (_getAllProductTitlesLock) { IEnumerable <ProductTitle> allProductTitles = _cacheStorage.Retrieve <IEnumerable <ProductTitle> >(CacheKeys.AllProductTitles.ToString()); if (allProductTitles == null) { allProductTitles = _productTitleRepository.FindAll().ToList(); _cacheStorage.Store(CacheKeys.AllProductTitles.ToString(), allProductTitles); } return(allProductTitles); } }