public async Task <IActionResult> Create(FabricantesViewModel fabricanteViewModel) { var fabricanteValidator = new FabricanteValidator(); if (!fabricanteValidator.IsCnpj(fabricanteViewModel.CNPJ)) { ModelState.AddModelError("CNPJ", "O CNPJ é inválido."); } var fabricante = new Fabricante(); fabricante.Nome = fabricanteViewModel.Nome; fabricante.CNPJ = fabricanteViewModel.CNPJ; fabricante.Endereco = fabricanteViewModel.Endereco; var(exists, errorExists) = await fabricanteRepository.ExistsAsync(fabricante); if (exists) { foreach (var error in errorExists) { ModelState.AddModelError(error.Key, error.Value); } } if (ModelState.IsValid) { await fabricanteRepository.AddFabricanteAsync(fabricante); return(RedirectToAction(nameof(Index))); } return(View(fabricanteViewModel)); }