public IHttpActionResult EvaluatePromotions(coreModel.PromotionEvaluationContext context) { // DOESN'T WORK //var cacheKey = CacheKey.Create("MarketingController.EvaluatePromotions", context.GetHash<MD5CryptoServiceProvider>()); //var retVal = _cacheManager.Get(cacheKey, () => _promotionEvaluator.EvaluatePromotion(context)); var retVal = _promotionEvaluator.EvaluatePromotion(context); return(Ok(retVal.Rewards.Select(x => x.ToWebModel()).ToArray())); }
public IHttpActionResult EvaluatePromotions(coreModel.PromotionEvaluationContext context) { var retVal = _promoEvaluator.EvaluatePromotion(context); return(Ok(retVal.Rewards.Select(x => x.ToWebModel()).ToArray())); }
private static PromotionEvaluationContext GetPromotionEvaluationContext() { var context = new PromotionEvaluationContext(); context.CartPromoEntries = context.PromoEntries = new [] { new ProductPromoEntry { CatalogId = "Samsung", CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d", ProductId = "v-b000bkzs9w", Price = 160.44m, Quantity = 2, }, new ProductPromoEntry { CatalogId = "Sony", CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d", ProductId = "v-a00032ksj", Price = 12.00m, Quantity = 1, }, new ProductPromoEntry { CatalogId = "LG", CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d", ProductId = "v-c00021211", Price = 1.00m, Quantity = 1, } }; return context; }