public void RemoveEmptyCart(App.Support.Common.Models.CartService.Cart cart)
 {
     if (IsEmptyCart(cart))
     {
         DeleteCart(cart);
     }
 }
        public async Task <App.Support.Common.Models.CartService.Cart> InsertOrUpdateCart(App.Support.Common.Models.CartService.Cart cart)
        {
            var tempCart = await _context.Carts.FirstOrDefaultAsync(c => c.Id == cart.Id);

            if (tempCart == null)
            {
                await _context.Carts.AddAsync(cart);
            }
            await _context.SaveChangesAsync();

            return(cart);
        }
 public async void DeleteCart(App.Support.Common.Models.CartService.Cart cart)
 {
     _context.Carts.Remove(cart);
     await _context.SaveChangesAsync();
 }
        public bool IsEmptyCart(App.Support.Common.Models.CartService.Cart cart)
        {
            var count = cart.CartItems.Count;

            return(count == 0 || cart.CartItems.All(cartItem => cartItem.Quantity <= 0));
        }