public static List <Model.ProductInfo> GetProductsByCategory(string category) { BLL.Product bll = new BLL.Product(); if (!enableCaching) { if (category.Contains(@"'")) { return(bll.GetProductsInCategories(category)); } else { return(bll.GetProductsByCategory(category)); } } string key = "product_by_category_" + category; List <Model.ProductInfo> data = (List <Model.ProductInfo>)HttpRuntime.Cache[key]; if (data == null) { if (category.Contains(@"'")) { data = bll.GetProductsInCategories(category); } else { data = bll.GetProductsByCategory(category); } AggregateCacheDependency cd = DependencyFactory.GetProductDependency(); HttpRuntime.Cache.Add(key, data, cd, DateTime.Now.AddHours(productTimeout), Cache.NoSlidingExpiration, CacheItemPriority.High, null); } return(data); }