public async Task <IActionResult> Edit(int id, [Bind("Id,Ibge,Uf,Nome,Longitude,Latitude,Regiao")] Domain.Cidades cidades) { if (id != cidades.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(cidades); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CidadesExists(cidades.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(cidades)); }
private static List <Domain.Cidades> LeituraCsv() { var pathFile = AppDomain.CurrentDomain.BaseDirectory + "DadosIniciais\\cidades_desafio_tecnico.csv"; var cidades = new List <Domain.Cidades>(); StreamReader streamReader = new StreamReader(pathFile); using (StreamReader reader = streamReader) { while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(';'); var cidade = new Domain.Cidades(); cidade.Ibge = Convert.ToInt32(values[0]); cidade.Uf = values[1]; cidade.Nome = values[2]; cidade.Longitude = values[3]; cidade.Latitude = values[4]; cidade.Regiao = values[5]; cidades.Add(cidade); } } return(cidades); }
public async Task <IActionResult> Create([Bind("Id,Ibge,Uf,Nome,Longitude,Latitude,Regiao")] Domain.Cidades cidades) { var cidadeExistenteIbge = _context.Cidades.Where(m => m.Ibge == cidades.Ibge).Any(); if (cidadeExistenteIbge) { ModelState.AddModelError("Ibge", "Número do Ibge existente."); } var cidadePorUf = _context.Cidades.Where(m => m.Uf == cidades.Uf); if (cidadePorUf.Any()) { var cidadeComNomeIgual = cidadePorUf.Where(m => m.Nome == cidades.Nome).Any(); if (cidadeComNomeIgual) { ModelState.AddModelError("Nome", "Cidade existente no UF " + cidades.Uf); } } if (ModelState.IsValid) { _context.Add(cidades); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(cidades)); }