public ViewResult Index(Cart cart, string returnUrl)
 {
     return View(new CartIndexViewModel
     {
         Cart = cart,
         ReturnUrl = returnUrl
     });
 }
 public Cart GetCart()
 {
     Cart cart = (Cart)Session["Cart"];
     if (cart == null)
     {
         cart = new Cart();
         Session["cart"] = cart;
     }
     return cart;
 }
 public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
 {
     if (ModelState.IsValid)
     {
         return View();
     }
     else
     {
         return View(new ShippingDetails());
     }
 }
        public RedirectToRouteResult RemoveFromCart(Cart cart, int productId, string returnUrl)
        {
            Product product = repository.products.FirstOrDefault(p => p.ProductID == productId);

            if (product != null)
            {
                cart.RemoveLine(product);
            }

            return RedirectToAction("Index", new { returnUrl });
        }
        // GET: /Cart/
        public RedirectToRouteResult AddToCart(Cart cart, int productId, string returnUrl)
        {
            Product product = repository.products.FirstOrDefault(p => p.ProductID == productId);

            if (product != null)
            {
                cart.AddItem(product, 1);
            }

            return RedirectToAction("Index", new {returnUrl});
        }
 public PartialViewResult Summary(Cart cart)
 {
     return PartialView(cart);
 }
 public PartialViewResult LoadMore(Cart cart)
 {
     return PartialView(cart);
 }