public ActionResult Create(FileCreateViewModel model) { if (Request.Files.Count > 0 && Request.Files[0].ContentLength > 0) { var fileName = this.Request.Files[0].FileName; var extension = Path.GetExtension(fileName); model.File.FileName = String.Format("{0}{1}", Guid.NewGuid(), extension); //delete the old file if(!model.File.IsNew()) { var oldFile = _service.Dal.FileProvider.Get().Single(i => i.Id == model.File.Id).FileName; var oldFilePath = this.Server.MapPath(String.Format("~/user_files/{0}", oldFile)); if (System.IO.File.Exists(oldFilePath)) System.IO.File.Delete(oldFilePath); } var saveTo = this.Server.MapPath(String.Format("~/user_files/{0}", model.File.NameWithExtension())); this.Request.Files[0].SaveAs(saveTo); } _service.Dal.FileProvider.Save(model.File); TempData["message"] = "File Saved"; return RedirectToAction("List", new {id = model.NavigationModel.Page.PageNavigation.Id }); }
public ActionResult Create(int pageId, int? id) { var file = id.HasValue ? _service.Dal.FileProvider.Get().Single(i=>i.Id == id.Value) : new EKFile{}; var model = new FileCreateViewModel { File = file}; model.NavigationModel = HomeIndexViewModelLoader.Create(pageId, _service); return View(model); }