public ActionResult Add(AddMonitorBm bind, IEnumerable <HttpPostedFileBase> Images) { if (this.ModelState.IsValid) { foreach (var img in Images) { if (img != null) { if (img.ContentLength > (5 * 1024 * 1024)) { ModelState.AddModelError("Custom Error", "File size must be less than 5 MB"); return(View()); } if (img.ContentType != "image/jpeg") { ModelState.AddModelError("CustomError", "File type must be \"jpeg\""); return(View()); } } this.service.AddNewMonitor(bind, Images); return(RedirectToAction("AdminMonitorsList")); } } return(this.View()); }
public void AddNewMonitor(AddMonitorBm bind, IEnumerable <HttpPostedFileBase> images) { Monitor monitor = Mapper.Map <AddMonitorBm, Monitor>(bind); int i = 1; foreach (var img in images) { if (img != null) { switch (i) { case 1: monitor.Image1 = new byte[img.ContentLength]; img.InputStream.Read(monitor.Image1, 0, img.ContentLength); break; case 2: monitor.Image2 = new byte[img.ContentLength]; img.InputStream.Read(monitor.Image2, 0, img.ContentLength); break; case 3: monitor.Image3 = new byte[img.ContentLength]; img.InputStream.Read(monitor.Image3, 0, img.ContentLength); break; case 4: monitor.Image4 = new byte[img.ContentLength]; img.InputStream.Read(monitor.Image4, 0, img.ContentLength); break; case 5: monitor.Image5 = new byte[img.ContentLength]; img.InputStream.Read(monitor.Image5, 0, img.ContentLength); break; } i++; } } this.Context.Monitors.Add(monitor); this.Context.SaveChanges(); }