コード例 #1
0
        public async Task <IActionResult> AddToWishList(EventItem productDetails)
        {
            try
            {
                if (productDetails.Id != null)
                {
                    var user    = _identityService.Get(HttpContext.User);
                    var product = new WishListItem()
                    {
                        Id          = Guid.NewGuid().ToString(),
                        Quantity    = 1,
                        ProductName = productDetails.Name,
                        PictureUrl  = productDetails.PictureUrl,
                        UnitPrice   = productDetails.Price,
                        ProductId   = productDetails.Id
                    };
                    await _cartService.AddItemToWishList(user, product);
                }
            }
            catch (BrokenCircuitException)
            {
                // Catch error when CartApi is in circuit-opened mode
                HandleBrokenCircuitException();
            }

            return(RedirectToAction("Index", "WishList"));
        }
コード例 #2
0
        public async Task <IActionResult> OnPost(CatalogItemViewModel productDetails)
        {
            if (productDetails?.Id == null)
            {
                return(RedirectToPage("/Index"));
            }
            await SetWishListModelAsync();

            await _wishlistService.AddItemToWishList(WishListModel.Id, productDetails.Id);

            await SetWishListModelAsync();

            return(RedirectToPage());
        }
コード例 #3
0
        /// <summary>
        /// Insert CatalogItem to WishList
        /// Get or creat wish list for user
        /// </summary>
        /// <param name="productDetails"></param>
        /// <returns></returns>
        public async Task <IActionResult> OnPost(CatalogItemViewModel productDetails)
        {
            if (productDetails?.Id == null)
            {
                return(RedirectToPage("/Index"));
            }
            if (_signInManager.IsSignedIn(HttpContext.User))
            {
                WishListModel = await _wishListViewModelService.GetOrCreateWishListForUser(User.Identity.Name);

                await _wishListService.AddItemToWishList(WishListModel.Id, productDetails.Id, productDetails.Price, productDetails.PriceSymbol);

                WishListModel = await _wishListViewModelService.GetOrCreateWishListForUser(User.Identity.Name);

                return(RedirectToPage());
            }
            else
            {
                throw new Exception("You don't have valid authentication!");
            }
        }