public ActionResult MakeOrder(Order order, Cart cart, OrderPayment orderPayment, OrderDelivery orderDelivery)
        {   
            if (cart.Lines.Count() != 0)
            {
                order.Payment = orderPayment.Payment;
                order.Delivery = orderDelivery.Delivery;
                order.Cart = JsonConvert.SerializeObject(cart);
                order.TotalPrice = cart.ComputeTotalValue();
                order.UserID = WebSecurity.CurrentUserId;
                {
                    if (ModelState.IsValid)
                    {
                        repository.AddOrder(order);
                    }
                }
                cart.Clear();
                return RedirectToAction("Index");
            }
            else
            {
                return View();
            }

        }
        public void Can_Clear_Contents()
        {
            Product p1 = new Product { ProductID = 1, Name = "P1", Price = 100M };
            Product p2 = new Product { ProductID = 2, Name = "P2", Price = 50M };

            Cart target = new Cart();

            target.AddItem(p1, 1);
            target.AddItem(p2, 2);

            target.Clear();

            Assert.AreEqual(target.Lines.Count(), 0);
        }