예제 #1
0
        public void DeleteFromCart(int index)
        {
            var product         = ProductsInCart.Where(u => u.Id == index).FirstOrDefault();
            var user            = _db.Users.Include(c => c.Cart).SingleOrDefault(n => n.Name == RunTimeInfo.Instance.Username);
            var userCartProduct = user.Cart.Where(p => p.ProductId == product.Id).FirstOrDefault();

            user.Cart.Remove(userCartProduct);
            ProductsInCart.Remove(product);

            _db.SaveChanges();
        }
        private void DeleteMethod(object param)
        {
            ObservableCollection <DisplayProduct> ProductsInCartCopy = new ObservableCollection <DisplayProduct>();

            if (SelectedProduct.QuantityInCart > 1)
            {
                SelectedProduct.QuantityInCart--;
                foreach (var product in ProductsInCart)
                {
                    if (product.Name == SelectedProduct.Name)
                    {
                        product.QuantityInCart = SelectedProduct.QuantityInCart;
                        product.Price          = MenuViewModel.choosedProduct.Price * product.QuantityInCart;
                    }
                    ProductsInCartCopy.Add(product);
                }
                ProductsInCart = ProductsInCartCopy;
                OnPropertyChanged("ProductsInCart");
                Total = 0;
                foreach (var product in ProductsInCart)
                {
                    Total += product.Price;
                }
                OnPropertyChanged("Total");
            }
            else
            {
                ProductsInCart.Remove(SelectedProduct);
                Total = 0;
                foreach (var product in ProductsInCart)
                {
                    Total += product.Price;
                }
                OnPropertyChanged("Total");
            }
        }