public void Setup() { emailWriterOptions = new EmailWriterOptions() { Body = "This is a test email", FromAddress = "*****@*****.**", IsHTML = false, MessageIdentifier = Guid.Empty.ToString(), SMTPHost = "smtp.gmail.com", SMTPPassword = "******", SMTPPort = 587, SMTPUserName = "******", Subject = "This is a test email", ToAddress = "*****@*****.**", UseSSL = true }; }
protected override async Task <IMessageWriterResult> PerformSend(IMessageWriterOptions options, ILogger logger) { EmailWriterOptions castOptions = (EmailWriterOptions)options; using (var smtpClient = new SmtpClient(castOptions.SMTPHost, castOptions.SMTPPort)) { smtpClient.EnableSsl = castOptions.UseSSL; smtpClient.UseDefaultCredentials = false; smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; smtpClient.Credentials = new System.Net.NetworkCredential(castOptions.SMTPUserName, castOptions.SMTPPassword); MailMessage message = new MailMessage(castOptions.FromAddress, castOptions.ToAddress, castOptions.Subject, castOptions.Body); message.IsBodyHtml = castOptions.IsHTML; message.Headers.Add("messageidentifier", castOptions.MessageIdentifier); await smtpClient.SendMailAsync(message); } return(new WriterResult()); }