public static ShoppingCart GetCart()

in UnicornStore/Models/ShoppingCart.cs [21:52]


        public static ShoppingCart GetCart(UnicornStoreContext db, HttpContext context) 
            => GetCart(db, GetCartId(context));

        public static ShoppingCart GetCart(UnicornStoreContext db, string cartId)
            => new ShoppingCart(db, cartId);

        public async Task AddToCart(Blessing blessing)
        {
            // Get the matching cart and blessing instances
            var cartItem = await _dbContext.CartItems.SingleOrDefaultAsync(
                c => c.CartId == _shoppingCartId
                && c.BlessingId == blessing.BlessingId);

            if (cartItem == null)
            {
                // Create a new cart item if no cart item exists
                cartItem = new CartItem
                {
                    BlessingId = blessing.BlessingId,
                    CartId = _shoppingCartId,
                    Count = 1,
                    DateCreated = DateTime.Now
                };

                _dbContext.CartItems.Add(cartItem);
            }
            else
            {
                // If the item does exist in the cart, then add one to the quantity
                cartItem.Count++;
            }
        }