public ActionResult Edit(Room room, HttpPostedFileBase Logo, HttpPostedFileBase[] NewImages) { NewImages = NewImages.Where(img => img != null).ToArray(); if (NewImages.Length > 0) { room.Images = repository.getById(room.Id).Images.Where(p => !p.IsLogo).ToList(); for (int i = 0; i < NewImages.Length; i++) { ImageForRoom img = new ImageForRoom() { Path = Path.Combine("/Images/", NewImages[i].FileName), Title = NewImages[i].FileName, Room = room, RoomId = room.Id, IsLogo = false }; if (!room.Images.Select(p => p.Path).Contains(img.Path)) { NewImages[i].SaveAs(Server.MapPath(img.Path)); room.Images.Add(img); } } } if (Logo != null) { ImageForRoom img = new ImageForRoom() { Path = Path.Combine("/Images/", Logo.FileName), Title = Logo.FileName, Room = room, RoomId = room.Id, IsLogo = true }; Logo.SaveAs(Server.MapPath(img.Path)); room.Images.Add(img); } repository.Edit(room); return(View("Index", model: repository.GetList())); }
public ActionResult Add(Room room, HttpPostedFileBase[] images, HttpPostedFileBase Logo) { room.Images = room.Images.Where(r => r != null).ToList(); if (Logo != null) { ImageForRoom img = new ImageForRoom() { Path = Path.Combine("/Images/", Logo.FileName), Title = Logo.FileName, Room = room, RoomId = room.Id, IsLogo = true }; Logo.SaveAs(Server.MapPath(img.Path)); room.Images.Add(img); } else { ImageForRoom img = new ImageForRoom() { Path = Path.Combine("/Images/", Logo.FileName), Title = Logo.FileName, Room = room, RoomId = room.Id, IsLogo = true }; } repository.Edit(room); return(View("Index", model: repository.GetList())); }