public async Task <ActionResult <long> > PostShoppingCartItem(long userId, [FromBody] Item item)
        {
            ShoppingCart shoppingCart = await context.ShoppingCarts
                                        .Where(sc => sc.UserId == userId)
                                        .FirstOrDefaultAsync();


            //If user does not have shopping cart, create one
            if (shoppingCart == null)
            {
                User user = await context.Users
                            .Where(u => u.Id == userId)
                            .FirstOrDefaultAsync();

                if (user == null)
                {
                    return(BadRequest("User does not exist"));
                }
                shoppingCart = new ShoppingCart
                {
                    UserId = user.Id,
                    User   = user,
                    Items  = new Collection <Item>()
                };
                await context.ShoppingCarts.AddAsync(shoppingCart);
            }
            shoppingCart.Items.Add(item);
            await context.SaveChangesAsync();

            return(item.Id);
        }
        public async Task <ActionResult <long> > Post([FromBody] User user)
        {
            await context.Users.AddAsync(user);

            await context.SaveChangesAsync();

            return(Ok(user.Id));
        }