public ActionResult Create(ModeloEditViewModel modeloVm) { if (!ModelState.IsValid) { modeloVm.Marcas = _dbContext.Marcas.ToList(); modeloVm.Tipos = _dbContext.Tipos.ToList(); return(View(modeloVm)); } Modelo modelo = ConstruirModelo(modeloVm); if (_dbContext.Modelos.Any(m => m.MarcaId == modelo.MarcaId && m.TipoId == modelo.TipoId && m.NombreModelo == modelo.NombreModelo)) { modeloVm.Marcas = _dbContext.Marcas.ToList(); modeloVm.Tipos = _dbContext.Tipos.ToList(); ModelState.AddModelError(string.Empty, "Modelo repetido!!!"); return(View(modeloVm)); } using (var tran = _dbContext.Database.BeginTransaction()) { try { var folder = "~/Content/Images/Modelos/"; var file = ""; _dbContext.Modelos.Add(modelo); _dbContext.SaveChanges(); if (modeloVm.FotoFile != null) { file = $"{modelo.ModeloId}.jpg"; var response = Helper.UploadPhoto(modeloVm.FotoFile, folder, file); if (!response) { file = "SinImagenDisponible.jpg"; } } else { file = "SinImagenDisponible.jpg"; } modelo.Foto = $"{folder}{file}"; _dbContext.Entry(modelo).State = EntityState.Modified; _dbContext.SaveChanges(); tran.Commit(); TempData["Msg"] = "Registro agregado"; return(RedirectToAction("Index")); } catch (Exception e) { modeloVm.Marcas = _dbContext.Marcas.ToList(); modeloVm.Tipos = _dbContext.Tipos.ToList(); ModelState.AddModelError(string.Empty, e.Message); return(View(modeloVm)); } } }
public ActionResult Create() { ModeloEditViewModel vm = new ModeloEditViewModel { Marcas = _dbContext.Marcas.ToList(), Tipos = _dbContext.Tipos.ToList() }; return(View(vm)); }
private Modelo ConstruirModelo(ModeloEditViewModel modeloVm) { return(new Modelo { ModeloId = modeloVm.ModeloId, MarcaId = modeloVm.MarcaId, TipoId = modeloVm.TipoId, NombreModelo = modeloVm.NombreModelo, Foto = modeloVm.Foto }); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Modelo modelo = _dbContext.Modelos .Include(m => m.Marca) .Include(m => m.Tipo) .SingleOrDefault(m => m.ModeloId == id); if (modelo == null) { return(HttpNotFound("Código de Modelo inexistente")); } ModeloEditViewModel modeloVm = ConstruirModeloEditViewModel(modelo); return(View(modeloVm)); }