public ActionResult Create(Person person) { if (ModelState.IsValid) { person.Id = Guid.NewGuid(); if (Session["files"] == null) { Session["files"] = new List<UploadFileInfo>(); } var filesStorage = Session["files"] as List<UploadFileInfo>; if (filesStorage != null) { foreach (UploadFileInfo file in filesStorage) { var photo = new Photo {Id = Guid.NewGuid()}; person.Photos.Add(photo); photo.FileName = file.ContentType; photo.CaptureDate = DateTime.Now; using (var fs = new FileStream(file.FileName, FileMode.Open)) { photo.Data = new byte[fs.Length]; fs.Read(photo.Data, 0, (int) fs.Length); } } filesStorage.Clear(); } db.People.Add(person); db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.EmployerId = new SelectList(db.Employers, "Id", "Name", person.EmployerId); ViewBag.OccupationId = new SelectList(db.Occupations, "Id", "Name", person.OccupationId); return View(person); }
public ActionResult SaveFile(Person person, HttpPostedFileBase files) { string fileName = Path.GetTempFileName(); if (Session["files"] == null) { Session["files"] = new List<UploadFileInfo>(); } var filesStorage = (List<UploadFileInfo>) Session["files"]; using (var fs = new FileStream(fileName, FileMode.Open)) { var buffer = new byte[8*1024]; int len; while ((len = files.InputStream.Read(buffer, 0, buffer.Length)) > 0) { fs.Write(buffer, 0, len); } } filesStorage.Add(new UploadFileInfo {FileName = fileName, ContentType = files.ContentType}); return Content("", "text/plain"); }
public ActionResult RemoveFile(Person person, IEnumerable<HttpPostedFileBase> files) { return Content("", "text/plain"); }