public override void Run(Error error) { var message = new MailMessage(); Recipients.AssertNotNullOrEmpty("Recipients"); FormattedSubject.AssertNotNullOrEmpty("FormattedSubject"); FormattedBody.AssertNotNullOrEmpty("FormattedBody"); From.AssertNotNullOrEmpty("From"); var stringBuilder = new StringBuilder(FormatString(FormattedBody, error)); using (var htmlTextWriter = new HtmlTextWriter(new StringWriter(stringBuilder))) { _errorMailHtmlFormatter.Format(htmlTextWriter, error); } message.From = new MailAddress(From); Recipients.Split(new char[] { ',' }) .Where(x => !string.IsNullOrEmpty(x)) .ToList() .ForEach(x => message.To.Add(x)); (CcRecipients ?? "").Split(new char[] { ',' }) .Where(x => !string.IsNullOrEmpty(x)) .ToList() .ForEach(x => message.To.Add(x)); message.Subject = FormatString(FormattedSubject, error); message.Body = stringBuilder.ToString(); message.IsBodyHtml = true; var client = new SmtpClient(); client.EnableSsl = IsTlsEnabled; client.Send(message); }