public void Execute(SendEmailEvent sendEmailEvent) { var mailMessage = new MailMessage { From = new MailAddress(_configuration.GetValue <string>("SmtpUsername", "*****@*****.**")) }; if (sendEmailEvent.ToAddress != null) { foreach (var toAddress in sendEmailEvent.ToAddress) { mailMessage.To.Add(toAddress); } } else { throw new ArgumentNullException("To Address can't be blank"); } if (sendEmailEvent.BccAddress != null) { foreach (var bccAddress in sendEmailEvent.BccAddress) { mailMessage.Bcc.Add(bccAddress); } } if (sendEmailEvent.CCAddress != null) { foreach (var ccAddress in sendEmailEvent.CCAddress) { mailMessage.Bcc.Add(ccAddress); } } mailMessage.Body = sendEmailEvent.Body; mailMessage.Subject = sendEmailEvent.Subject; mailMessage.IsBodyHtml = true; _smtpClient.EnableSSLForEmail(); _smtpClient.Send(mailMessage); }