public ActionResult Cadastrar(FornecedorModel model) { var usuario = AutenticacaoProvider.UsuarioAutenticado; if (usuario == null) { return(RedirectToAction("Login", "CommonViews")); } try { if (model.FornecedorTelefone.Any(i => i.Ddd != null && i.Telefone != null || i.DddEstrangeiro != null && i.TelefoneEstrangeiro != null)) { // Normalizando todos campos estrangeiro para um único campo esperado na tabela var telefones = model.FornecedorTelefone.Where(i => i.Ddd != null && i.Telefone != null || i.DddEstrangeiro != null && i.TelefoneEstrangeiro != null).ToList(); model.FornecedorTelefone = new List <FornecedorTelefoneModel>(); foreach (var telefone in telefones) { if (!string.IsNullOrEmpty(telefone.DddEstrangeiro)) { telefone.Ddd = telefone.DddEstrangeiro; } if (!string.IsNullOrEmpty(telefone.TelefoneEstrangeiro)) { telefone.Telefone = telefone.TelefoneEstrangeiro; } model.FornecedorTelefone.Add(telefone); } if (ModelState.IsValid) { notificacao = true; return(RedirectToAction("Lista", new { notificar = _busFornecedor.Add(model) })); } } model.RamosAtividade = new RamoAtividadeBusiness().Get().ToList(); model.Bancos = new BancoBusiness().Get().ToList(); return(View(model)); } catch (Exception ex) { model.RamosAtividade = new RamoAtividadeBusiness().Get().ToList(); model.Bancos = new BancoBusiness().Get().ToList(); return(View(model)); } }