public ActionResult Add(AddAdvertisementViewModel advertisement) { if (advertisement != null && this.ModelState.IsValid) { var newAd = this.Mapper.Map<Advertisement>(advertisement); var currentUserId = this.User.Identity.GetUserId(); newAd.Author = this.manager.Users.FirstOrDefault(u => u.Id == currentUserId); if (advertisement.UploadedImage == null) { newAd.Image = this.images.GetById(1); } else { ProcessImage(advertisement, newAd); } this.advertisements.Add(newAd); return this.RedirectToAction("Index", "PageableAdvertisementList"); } return this.View(advertisement); }
public ActionResult Add() { var addAdViewModel = new AddAdvertisementViewModel { Categories = this.categories .GetAll() .Where(c => c.Name != " Всички") .Select(c => new SelectListItem { Text = c.Name, Value = c.Id.ToString() }), Towns = this.towns.GetAll() .Select(c => new SelectListItem { Text = c.Name, Value = c.Id.ToString() }) }; return this.View(addAdViewModel); }
private static void ProcessImage(AddAdvertisementViewModel advertisement, Advertisement newAd) { using (var memory = new MemoryStream()) { advertisement.UploadedImage.InputStream.CopyTo(memory); var content = memory.GetBuffer(); newAd.Image = new Image { Content = content, FileExtension = advertisement.UploadedImage.FileName.Split('.').Last() }; } }