public void UpdateConfiguracaoServidorEmail(ConfiguracaoServidorEmailDTO configuracaoServidorEmailDTO) { try { if (configuracaoServidorEmailDTO == null) { throw new ArgumentNullException("configuracaoServidorEmailDTO."); } ConfiguracaoServidorEmail persistido; var lista = _configuracaoServidorEmailRepository.GetAll().ToList(); if (lista.Count == 0) { GetConfiguracaoServidorEmail(); persistido = _configuracaoServidorEmailRepository.GetAll().Single(); } else if (lista.Count == 1) { persistido = lista.Single(); } else { throw new Exception("Existe mais de uma ConfiguracaoServidorEmail quando deveria existir só uma."); } string senha = persistido.Senha; if (!string.IsNullOrWhiteSpace(configuracaoServidorEmailDTO.Senha)) { senha = configuracaoServidorEmailDTO.Senha; } var corrente = ConfiguracaoServidorEmailFactory.CreateConfiguracaoServidorEmail( configuracaoServidorEmailDTO.UtilizarEnvioDeEmail, configuracaoServidorEmailDTO.Conta, senha, configuracaoServidorEmailDTO.Smtp, configuracaoServidorEmailDTO.Porta, configuracaoServidorEmailDTO.Ssl, configuracaoServidorEmailDTO.PastaRaiz); corrente.Id = persistido.Id; AlterarConfiguracaoServidorEmail(persistido, corrente); } catch (Exception ex) { throw ManipuladorDeExcecao.TrateExcecao(ex); } }
public ActionResult Index(ConfiguracaoServidorEmailDTO configuracaoServidorEmailDTO) { try { _configuracaoService.UpdateConfiguracaoServidorEmail(configuracaoServidorEmailDTO); return(JavaScript( "MensagemSucesso('A configuração foi salva com sucesso.');" + "carregarPaginaAjax('" + Url.Action("Index", "Configuracao") + "');")); } catch (Exception ex) { TratamentoErro.Tratamento(this, ex); return(View(configuracaoServidorEmailDTO)); } }