public void InsertOrUpdate(PASO paso) { if (paso.IDPASO == default(int)) { // New entity context.PASO.Add(paso); } else { // Existing entity context.Entry(paso).State = System.Data.Entity.EntityState.Modified; } }
public ActionResult Create(PASO paso, HttpPostedFileBase fotoPaso) { if (ModelState.IsValid) { //Variable para el número de paso int num = 0; try { //Num último paso insertado num = (from p in pasoRepository.All where p.IDRECETA == paso.IDRECETA select p.NUMEROPASO) .Max(); } catch { } paso.NUMEROPASO = num + 1; //Lógica para insertar el nuevo Paso pasoRepository.InsertOrUpdate(paso); pasoRepository.Save(); //ID del paso recién insertado int idPaso = (from p in pasoRepository.All select p.IDPASO) .Max(); //Lógica para insertar la imagen if (fotoPaso != null) { if (fotoPaso.ContentLength > 0) { string nombreArchivo = Convert.ToString(idPaso) + Path.GetExtension(fotoPaso.FileName); //Subir archivo de foto string rutaArchivo = Path.Combine(Server.MapPath("~/Images/Pasos"), nombreArchivo); fotoPaso.SaveAs(rutaArchivo); //Editar la receta guardada para agregar la ruta de la foto PASO editar = pasoRepository.Find(idPaso); editar.FOTO = "../../Images/Pasos/" + nombreArchivo; pasoRepository.InsertOrUpdate(editar); pasoRepository.Save(); } } /////////////////////////////// return RedirectToAction("Create", "INGREDIENTE", new { idPaso = idPaso }); } else { return View(); } }
// // GET: /PASO/Create public ActionResult Create(int idReceta) { PASO nuevo = new PASO(); nuevo.IDRECETA = idReceta; return View(nuevo); }
public ActionResult Edit(PASO paso) { if (ModelState.IsValid) { pasoRepository.InsertOrUpdate(paso); pasoRepository.Save(); return RedirectToAction("Index", new { idReceta = paso.IDRECETA }); } else { return View(); } }