public static ProductPartialViewModel ConvertToProductViewModel(this Product product) { ProductPartialViewModel productViewModel = new ProductPartialViewModel(); productViewModel.Id = product.Id; productViewModel.Name = product.Name; productViewModel.Catagory = product.Catalog; productViewModel.Description = product.Description; productViewModel.Price = product.Price; productViewModel.Image = product.share_Images.Count() > 0 ? product.share_Images.First().ImagePath : "/Content/Images/404/404.png"; productViewModel.Quantity = 1; productViewModel.share_Images = product.share_Images; return productViewModel; }
/// <summary> /// Add a product to Cart /// </summary> /// <param name="Id">product Id</param> /// <returns>updated view of Cart</returns> public ActionResult AddToCart(int Id) { List<ProductPartialViewModel> productsInCart = new List<ProductPartialViewModel>(); if (HttpContext.Session != null && HttpContext.Session["ASPNETShoppingCart"] != null) { productsInCart = (List<ProductPartialViewModel>)HttpContext.Session["ASPNETShoppingCart"]; } // Check whether product is exist in cart or not bool IsExist = false; foreach (var item in productsInCart) { if (item.Id == Id) { IsExist = true; item.Quantity++; } } if (!IsExist) { Product temp = _productRepository.FindById(Id); ProductPartialViewModel newProductInCart = new ProductPartialViewModel() { Id = temp.Id, Name = temp.Name, Catagory = temp.Catalog, Description = temp.Description, Price = temp.Price, Image = temp.share_Images.Count() > 0 ? temp.share_Images.First().ImagePath : "/Content/Images/404/404.png", Quantity = 1 }; productsInCart.Add(newProductInCart); } if (HttpContext.Session != null) { HttpContext.Session["ASPNETShoppingCart"] = productsInCart; } return PartialView(productsInCart); }