public ActionResult New() { ViewModelAddProduct viewModelAddProduct = new ViewModelAddProduct(); UnitOfWork unitOfWork = new UnitOfWork(); viewModelAddProduct.Categories = unitOfWork.Category.GetAll(); return(View(viewModelAddProduct)); }
public async Task <IActionResult> AddProduct(ViewModelAddProduct product) { var path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/images", Path.GetFileName(product.ImageFile.FileName)); using (var stream = new FileStream(path, FileMode.Create)) { await product.ImageFile.CopyToAsync(stream); } repository.AddProduct(new Product { ProductName = product.ProductName, ProductPrice = product.ProductPrice, Description = product.Description, ProductPublishedDate = DateTime.Now, ImageName = Path.GetFileName(product.ImageFile.FileName), AspNetUsersId = UserId }); return(RedirectToAction(nameof(ShowAllProduct))); }
public ActionResult AddProduct(ViewModelAddProduct viewModelAddProduct) { ImageController imageController = new ImageController(); bool isFileImage = imageController.IsFileImage(viewModelAddProduct.ImageFile); if (!isFileImage) { return(RedirectToAction("New", "Product")); } string pathForDb = imageController.AddImageToPath(viewModelAddProduct.ImageFile, "~/Content/ProductImages/"); viewModelAddProduct.Product.ProductImageFilePath = pathForDb; UnitOfWork unitOfWork = new UnitOfWork(); unitOfWork.Product.Add(viewModelAddProduct.Product); unitOfWork.Complete(); return(RedirectToAction("Index", "Home")); }