public async Task <IActionResult> Create(ClientesViewModel clientesViewModel) { var clientesValidator = new ClientesValidator(); if (!clientesValidator.IsCpf(clientesViewModel.CPF)) { ModelState.AddModelError("CPF", "O CPF é inválido."); } var cliente = new Cliente { Id = clientesViewModel.Id, Nome = clientesViewModel.Nome, Sobrenome = clientesViewModel.Sobrenome, CPF = clientesViewModel.CPF, Endereco = clientesViewModel.Endereco, Idade = clientesViewModel.Idade, EstadoCivil = clientesViewModel.estadoCivil }; var(exists, errorExists) = await clienteRepository.ExistsAsync(cliente); if (exists) { foreach (var error in errorExists) { ModelState.AddModelError(error.Key, error.Value); } } if (ModelState.IsValid) { await clienteRepository.AddClienteAsync(cliente); return(RedirectToAction(nameof(Index))); } return(View(clientesViewModel)); }