Enviando E.mail com Anexo
Vou partir do pressuposto que você já conhece como mandar e-mail via C#.NET. Mesmo assim vou explicar algumas informações importantes. Vou utilizar a maneira nova de enviar e-mail, muitos ainda usam a velha maneira e para isso é necessário importar a classe using System.Net.Mail;.
public static void sendMail(string server, string From, string to, string subject, string body, string Cc, string fileAttachment) { SmtpClient smtp = new SmtpClient(server); MailMessage mailSend = new MailMessage(); mailSend.From = new MailAddress(From.Replace(';', ',')); mailSend.To.Add(to.Replace(';', ',')); if (!String.IsNullOrEmpty(Cc)) mailSend.CC.Add(Cc); mailSend.Subject = subject; mailSend.SubjectEncoding = System.Text.Encoding.UTF8; mailSend.Body = body; mailSend.BodyEncoding = System.Text.Encoding.UTF8; mailSend.IsBodyHtml = true; mailSend.Attachments.Add(new Attachment(fileAttachment)); smtp.Send(mailSend); } |
Note que se foi passado pelo usuário “;” em vez de vírgula entre os e-mails, o código faz um replace para “vírgula”. A primeira linha foi atribuir o nome do servidor SMTP, depois atualizar os endereços, colocar o corpo para HTML e na penúltima linha anexar o endereço do arquivo passado. Por final, o e-mail é enviado com o comando Send.
O segundo exemplo, o anexo é colocado passando como parâmetro o tipo FileStream. Code 1.2.
public static void sendMail(string server, string From, string to, string subject, string body, string Cc, FileStream fileStream) { SmtpClient smtp = new SmtpClient(server); MailMessage mailSend = new MailMessage(); mailSend.From = new MailAddress(From.Replace(';', ',')); mailSend.To.Add(to.Replace(';', ',')); if (!String.IsNullOrEmpty(Cc)) mailSend.CC.Add(Cc); mailSend.Subject = subject; mailSend.SubjectEncoding = System.Text.Encoding.UTF8; mailSend.Body = body; mailSend.BodyEncoding = System.Text.Encoding.UTF8; mailSend.IsBodyHtml = true; mailSend.Attachments.Add(new Attachment(fileStream, "attachment")); smtp.Send(mailSend); } |
Sign up to our newsletter
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.