// GET: TipoCulturas/Edit/5 public async Task <IActionResult> Edit(int?CodigoCultura, int?CodigoPraga) { if (CodigoCultura == null || CodigoPraga == null) { return(NotFound()); } var tipoCultura = await _context.TipoCulturas .Include(t => t.Cultura) .Include(t => t.Praga) .FirstOrDefaultAsync(m => m.CodigoCultura == CodigoCultura && m.CodigoPraga == CodigoPraga); if (tipoCultura == null) { return(NotFound()); } TipoCulturaViewModel model = new TipoCulturaViewModel(); model.CodigoCultura = tipoCultura.CodigoCultura; model.CodigoPraga = tipoCultura.CodigoPraga; model.Cultura = tipoCultura.Cultura; model.Praga = tipoCultura.Praga; // model.SelecionadoKeys = String.Format("{0},{1}", tipoCultura.CodigoCultura, tipoCultura.CodigoPraga); ViewData["CodigoCultura"] = new SelectList(_context.Culturas, "Codigo", "Nome", model.Cultura); ViewData["CodigoPraga"] = new SelectList(_context.Pragas, "Codigo", "NomePopular", model.CodigoPraga); return(View(model)); }
public async Task <IActionResult> Edit(int CodigoCultura, int CodigoPraga, TipoCulturaViewModel tipoCulturaViewModel, TipoCultura tipoCultura) { if (CodigoCultura != tipoCultura.CodigoCultura || CodigoPraga != tipoCultura.CodigoPraga) { return(NotFound()); } if (ModelState.IsValid) { try { var culturas = await _context.Culturas .Include(c => c.ListaTipoCulturas) .FirstOrDefaultAsync(c => c.Codigo == CodigoCultura); var pragas = await _context.Pragas .Include(c => c.ListaTipoCulturas) .FirstOrDefaultAsync(c => c.Codigo == CodigoPraga); //removendo range de lista de tipo de cultra _context.TipoCulturas.RemoveRange(culturas.ListaTipoCulturas.Where(m => m.CodigoCultura == CodigoCultura && m.CodigoPraga == CodigoPraga)); _context.TipoCulturas.RemoveRange(pragas.ListaTipoCulturas.Where(m => m.CodigoCultura == CodigoCultura && m.CodigoPraga == CodigoPraga)); var culturasadd = await _context.Culturas .FirstOrDefaultAsync(c => c.Codigo == tipoCulturaViewModel.SelecionadoKeysCultura); var pragasadd = await _context.Pragas .FirstOrDefaultAsync(c => c.Codigo == tipoCulturaViewModel.SelecionadoKeysPraga); tipoCultura.CodigoCultura = culturasadd.Codigo; tipoCultura.Cultura = culturasadd; tipoCultura.CodigoPraga = pragasadd.Codigo; tipoCultura.Praga = pragasadd; _context.Add(tipoCultura); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TipoCulturaExists(tipoCultura.CodigoCultura, tipoCultura.CodigoPraga)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["CodigoCultura"] = new SelectList(_context.Culturas, "Codigo", "Nome", tipoCulturaViewModel.SelecionadoKeysCultura); ViewData["CodigoPraga"] = new SelectList(_context.Pragas, "Codigo", "NomePopular", tipoCulturaViewModel.SelecionadoKeysPraga); return(View(tipoCultura)); }