public IResult Edit(SoapUploadViewModel model) { IResult result = new Result(); try { var instance = GetSoap(model.Id); var imageUrl = ""; var file = model.ImageFile; if (file != null) //there is no new image { var fileName = Path.GetFileName(file.FileName); var savePath = HttpContext.Current.Server.MapPath("/Upload/Soap/") + fileName; file.SaveAs(savePath); imageUrl = "/Upload/Soap/" + fileName; } else { imageUrl = instance.ImageUrl; } Mapper.Map(model, instance); instance.ImageUrl = imageUrl; repository.Update(instance); result.Success = true; } catch (Exception e) { result.Message = e.ToString(); } return(result); }
public JsonResult SoapUpload(SoapUploadViewModel model) { var serverPath = Server.MapPath("/Upload/Soap/"); if (!Directory.Exists(serverPath)) { Directory.CreateDirectory(serverPath); } var soap = soapService.SaveItem(model, serverPath); if (soap == null) { return(Json("Error", JsonRequestBehavior.AllowGet)); } return(Json(soap, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(SoapUploadViewModel model) { if (!ModelState.IsValid) { TempData["editStatus"] = "alert('請確認欄位是否有遺漏');"; return(RedirectToAction("Index")); } var result = soapService.Edit(model); if (result.Success != true) { TempData["editStatus"] = "alert('Error');"; } else { TempData["editStatus"] = "alert('修改成功');"; } return(RedirectToAction("Index")); }
public Soap SaveItem(SoapUploadViewModel model, string serverPath) { var file = model.ImageFile; if (file != null) { var fileName = Path.GetFileName(file.FileName); var extention = Path.GetExtension(file.FileName); var fileNameNoExtention = Path.GetFileNameWithoutExtension(file.FileName); var filePath = serverPath + fileName; file.SaveAs(filePath); var instance = Mapper.Map <SoapUploadViewModel, Soap>(model); instance.Id = Guid.NewGuid().ToString("N").Substring(0, 15); instance.UploadTime = timeService.GetLocalDateTime(LocalDateTimeService.CHINA_STANDARD_TIME); instance.Flg = true; instance.ImageUrl = "/Upload/Soap/" + fileName; repository.Create(instance); return(instance); } return(null); }