public static void Enviar(ConfigEmail config, string destinatario, string assunto, string corpo, Stream anexo = null, string tituloAnexo = null) { var listaDestinatarios = destinatario .Split(';') .Select(x => x.Trim()) .ToList(); Enviar(config, listaDestinatarios, assunto, corpo, anexo, tituloAnexo); }
public static void Enviar(ConfigEmail config, List <string> listaDestinatarios, string assunto, string corpo, Stream anexo = null, string tituloAnexo = null) { var message = new MimeMessage(); message.From.Add(new MailboxAddress(config.EmailRemetente)); foreach (var destinatario in listaDestinatarios) { message.To.Add(new MailboxAddress(destinatario)); } message.Subject = assunto; var builder = new BodyBuilder { HtmlBody = corpo }; if (anexo != null) { builder.Attachments.Add(tituloAnexo, anexo); } message.Body = builder.ToMessageBody(); using (var client = new MailKit.Net.Smtp.SmtpClient()) { // Necessário em alguns clientes if (config.DesprezarCertificado) { client.ServerCertificateValidationCallback = (s, c, h, e) => true; } client.Connect(config.EnderecoSMTP, config.Porta, MailKit.Security.SecureSocketOptions.Auto); if (config.RequerAutenticacao) { client.Authenticate(config.Usuario, config.Senha); } client.Send(message); client.Disconnect(true); } }