public IActionResult ModificarProyecto(int Id) { var Proyecto = Context.Proyectos.Include(m => m.Imagenes).SingleOrDefault(m => m.ProyectoId == Id); var Modelo = new ModificarProyectoViewModel(); Modelo.Nombre = Proyecto.Nombre; Modelo.Descripcion = Proyecto.Descripcion; Modelo.ProyectoId = Proyecto.ProyectoId; Modelo.Imagenes = Proyecto.Imagenes; return View(Modelo); }
public IActionResult ModificarProyecto(int Id, ModificarProyectoViewModel modelo) { if (!ModelState.IsValid) { return View(modelo); } var Proyecto = Context.Proyectos.Include(m => m.Imagenes).SingleOrDefault(m => m.ProyectoId == Id); string RutaFolder = ""; if (modelo.Nombre != Proyecto.Nombre) { var RutaFolderVieja = Path.Combine(Environment.WebRootPath, "Uploads", Proyecto.Nombre); var RutaFolderNueva = Path.Combine(Environment.WebRootPath, "Uploads", modelo.Nombre); System.IO.Directory.Move(RutaFolderVieja, RutaFolderNueva); RutaFolder = Path.Combine("Uploads", modelo.Nombre); } else { RutaFolder = Path.Combine("Uploads", Proyecto.Nombre); } if (modelo.ImagenPerfil != null && modelo.ImagenPerfil.Length > 0) { var RutaImagenPerfil = Path.Combine(Environment.WebRootPath, "Uploads", Proyecto.ImagenPerfil); if (System.IO.File.Exists(RutaImagenPerfil)) { System.IO.File.Delete(RutaImagenPerfil); } var fileName = ContentDispositionHeaderValue.Parse(modelo.ImagenPerfil.ContentDisposition).FileName.Trim('"'); var rutaImagen = Path.Combine(RutaFolder, fileName); modelo.ImagenPerfil.SaveAs(rutaImagen); Proyecto.ImagenPerfil = fileName; } foreach (var Imagen in modelo.ImagenesForm) { if (Imagen != null && Imagen.Length > 0) { var fileName = ContentDispositionHeaderValue.Parse(Imagen.ContentDisposition).FileName.Trim('"'); var rutaImagen = Path.Combine(RutaFolder, fileName); Imagen.SaveAs(rutaImagen); Proyecto.Imagenes.Add(new ImagenProyecto { Path = fileName }); } } Proyecto.Nombre = modelo.Nombre; Proyecto.Descripcion = modelo.Descripcion; Proyecto.EstadoProyecto = modelo.EstadoProyecto; Context.SaveChanges(); return RedirectToAction("ModificarProyecto", new {id = Proyecto.ProyectoId }); }