/// <summary> /// Remove a image from list images of product /// </summary> /// <param name="Id">product Id</param> /// <returns>updated view of Cart</returns> public ActionResult DeleteImage(int productId, int imageId) { product_Products product_Products = db.product_Products .Include(i => i.product_Categories) .Include(i => i.share_Images) .Where(i => i.ID == productId) .SingleOrDefault(); if (product_Products != null && product_Products.share_Images.Count() > 0) { share_Images image = product_Products.share_Images.Where(i => i.ID == imageId).SingleOrDefault(); if (image != null) { try { product_Products.share_Images.Remove(image); var deleteImage = db.share_Images.First(i => i.ID == image.ID); var path = deleteImage.ImagePath; db.share_Images.Remove(deleteImage); db.SaveChanges(); DeleteImageInFolder(path); } catch (RetryLimitExceededException) { } } } LoadListImageProductPartialViewModels listImageViewModels = new LoadListImageProductPartialViewModels() { ProductId = product_Products.ID, Images = product_Products.share_Images }; return PartialView("LoadListImageProduct", listImageViewModels); }
public ActionResult UploadImage(IEnumerable<HttpPostedFileBase> files, int? IdProduct) { if (IdProduct == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } product_Products product_Products = db.product_Products .Include(i => i.product_Categories) .Include(i => i.share_Images) .Where(i => i.ID == IdProduct) .Single(); if (files != null) { foreach (var file in files) { if (file.ContentLength > 0) { // width + height will force size, care for distortion //Exmaple: ImageUpload imageUpload = new ImageUpload { Width = 800, Height = 700 }; // height will increase the width proportionally //Example: ImageUpload imageUpload = new ImageUpload { Height= 600 }; // width will increase the height proportionally ImageUpload imageUpload = new ImageUpload { Width = 600 }; // rename, resize, and upload //return object that contains {bool Success,string ErrorMessage,string ImageName} ImageResult imageResult = imageUpload.RenameUploadFile(file); if (imageResult.Success) { //TODO: write the filename to the db var photo = new share_Images { ImageName = imageResult.ImageName, ImagePath = Path.Combine(ImageUpload.LoadPath, imageResult.ImageName) }; if (product_Products.share_Images == null) { product_Products.share_Images = new List<share_Images>(); } product_Products.share_Images.Add(photo); if (product_Products.share_Images.Count() > 0) { product_Products.CoverImageID = product_Products.share_Images.ElementAt(0).ID; } } else { // use imageResult.ErrorMessage to show the error ViewBag.Error = imageResult.ErrorMessage; } } } db.SaveChanges(); } LoadListImageProductPartialViewModels listImageViewModels = new LoadListImageProductPartialViewModels() { ProductId = product_Products.ID, Images = product_Products.share_Images }; return PartialView("LoadListImageProduct", listImageViewModels); }