private static void PopulateEmaiMessage(EmailConfigurationElement emailConfiguration) { if (!string.IsNullOrWhiteSpace(emailConfiguration.From)) { _emailMessage.From = emailConfiguration.From; } if (!string.IsNullOrWhiteSpace(emailConfiguration.BCC)) { _emailMessage.Bcc = emailConfiguration.BCC.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); } if (!string.IsNullOrWhiteSpace(emailConfiguration.CC)) { _emailMessage.Cc = emailConfiguration.CC.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); } if (!string.IsNullOrWhiteSpace(emailConfiguration.To)) { _emailMessage.To = emailConfiguration.To.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); } if (!string.IsNullOrWhiteSpace(emailConfiguration.Message)) { _emailMessage.Message = emailConfiguration.Message; } if (!string.IsNullOrWhiteSpace(emailConfiguration.Subject)) { _emailMessage.Subject = emailConfiguration.Subject; } }
public void SendMessage(string text, string recipientEmail) { // it would be better to initialize this field in ctor // but it was a trouble that EmailConfigurationSection // cannot be initializes during app startup because of // Ninject binging _emailSettings = EmailConfigurationSection.Instance.Email; var fromAddress = new MailAddress(_emailSettings.MailFromAddress, _emailSettings.MailFromName); var toAddress = new MailAddress(recipientEmail); var password = _encryptionSerive.Decrypt(_emailSettings.Password); var credential = new NetworkCredential(fromAddress.Address, password); _smtp.Host = _emailSettings.Host; _smtp.Port = _emailSettings.Port; _smtp.Credentials = credential; using (var message = new MailMessage(fromAddress, toAddress) { Subject = _emailSettings.MailFromName, Body = text }) { try { _smtp.Send(message); } catch (Exception) { // TODO: some exception handling } } }