public ActionResult Editar(TecnicaVista model, HttpPostedFileBase fichero) { if (model != null && ModelState.IsValid) { /* Se supone que un usuario solo podrá editar sus blog asi que dejo el usuario sin modificar * CustomIdentity cus = (CustomIdentity)System.Web.HttpContext.Current.User.Identity; * Usuario usu = db.Usuario.FirstOrDefault(oo => oo.login == cus.Email); */ //Buscamos el blog a modificar... var blog = DbContext.Tecnica.Find(model.IdTecnica); blog.titulo = model.Titulo; blog.fecha = DateTime.Now; blog.texto = model.Texto; if (fichero != null && fichero.ContentLength > 0) { //guardamos la nueva imagen con la misma ruta que tenía antes, solo cambia el nombre var nombre = "Tecnica" + model.IdTecnica; var extension = fichero.FileName.Substring(fichero.FileName.LastIndexOf(".", StringComparison.Ordinal)); var ruta = Server.MapPath("~/Uploads/Fotos") + "/" + nombre + extension; fichero.SaveAs(ruta); blog.foto = "~/uploads/fotos/" + nombre + extension; } DbContext.SaveChanges(); } return(RedirectToAction("Index", "Tecnicas")); }
public ActionResult Anadir(TecnicaVista model, HttpPostedFileBase fichero) { if (model != null && ModelState.IsValid) { if (fichero != null && fichero.ContentLength > 0) { var blog = new Tecnica { titulo = model.Titulo, fecha = DateTime.Now, texto = model.Texto, foto = "" }; DbContext.Tecnica.Add(blog); DbContext.SaveChanges(); try { var nombre = "Tecnica" + blog.idTecnica; var extension = fichero.FileName.Substring(fichero.FileName.LastIndexOf(".", StringComparison.CurrentCulture)); var ruta = Server.MapPath("~/Uploads/Fotos") + "/" + nombre + extension; fichero.SaveAs(ruta); blog.foto = "~/uploads/fotos/" + nombre + extension; DbContext.SaveChanges(); } catch (Exception e) { //si falla el anadir la foto, borramos el elemento de la base de datos y devolvemos la vista con un error DbContext.Tecnica.Remove(blog); DbContext.SaveChanges(); ModelState.AddModelError("UcemeError", Utilidades.ErrorManager.ErrorCodeToString(Utilidades.ErrorCodes.ErrorAddingItem) + " " + e.Message); return(RedirectToAction("index", "Tecnicas")); } } } return(RedirectToAction("Index", "Tecnicas")); }
public ActionResult Anadir() { var blog = new TecnicaVista(); return(View(blog)); }