/// <summary> /// Method used to store user selected items in session /// </summary> /// <param name="selectedItem"></param> /// <returns></returns> public JsonResult ToggleCartSelection(ProductAddedToCart selectedItem) { var itemsInCart = _session.Get <CartProducts>(SessionKey.CART_ITEMS); if (itemsInCart == null) { itemsInCart = new CartProducts() { CartItems = new List <ProductAddedToCart>() }; } if (itemsInCart.CartItems.Any(x => x.ProductId == selectedItem.ProductId)) { itemsInCart.CartItems.RemoveAll(x => x.ProductId == selectedItem.ProductId); } else { itemsInCart.CartItems.Add(selectedItem); } _session.Set <CartProducts>(SessionKey.CART_ITEMS, itemsInCart); return(Json(itemsInCart)); }