public ActionResult Create(CreateProjectPostRequest projectRequest) { if (ModelState.IsValid) { var file = Request.Files["coverImage"]; if (file != null && file.ContentLength > 0) { 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) { // Add new image to database var photo = new share_Images { ImageName = imageResult.ImageName, ImagePath = Path.Combine(ImageUpload.LoadPath, imageResult.ImageName) }; var imageId = service.AddImage(photo); // Add product projectRequest.CoverImageId = imageId; service.AddProject(projectRequest); return(RedirectToAction("Index")); } else { // use imageResult.ErrorMessage to show the error ViewBag.Error = imageResult.ErrorMessage; } } } } PopulateProjectTypeDropDownList(); PopulateRegionDropDownList(); PopulateProgressStatusDropDownList(); PopulateStatusDropDownList(); return(View(projectRequest)); }