template net incrustada imagen formato enviar correo con body c# asp.net

net - Enviar un correo electrónico con un archivo HTML como cuerpo(C#)



send email html template c# (3)

Aquí hay un ejemplo simple . Y aquí hay uno que incluye una imagen incrustada (a diferencia de un enlace img a una fuente web, que muchos clientes de correo electrónico no mostrarán).

Edición: Por supuesto, puede leer el archivo html con File.ReadAllText , que usaría como en los enlaces.

¿Cómo puedo configurar el cuerpo de MailMessage con un archivo HTML?


Si está usando System.Net.Mail.MailMessage , puede usar:

mail.IsBodyHtml = true;

System.Web.Mail.MailMessage está obsoleto pero si lo está utilizando: mail.BodyFormat funciona.


Simplemente configure la propiedad MailMessage.BodyFormat en MailFormat.Html y luego MailFormat.Html el contenido de su archivo html en la propiedad MailMessage.Body :

using (StreamReader reader = File.OpenText(htmlFilePath)) // Path to your { // HTML file MailMessage myMail = new MailMessage(); myMail.From = "[email protected]"; myMail.To = "[email protected]"; myMail.Subject = "HTML Message"; myMail.BodyFormat = MailFormat.Html; myMail.Body = reader.ReadToEnd(); // Load the content from your file... //... }