body c# asp.net html mailmessage

body - MailMessage c#- ¿Cómo hacerlo HTML y agregar imágenes, etc.?



mailmessage c# body html (5)

string to = "[email protected]"; string body = "Test"; SmtpClient SMTPServer = new SmtpClient("127.0.0.1"); MailMessage mailObj = new MailMessage(urEmail, to, subject, body); SMTPServer.Send(mailObj);

Así es como actualmente estoy enviando un correo electrónico de prueba. ¿Cómo hago este html y puedo hacer que el correo electrónico enviado se vea mejor agregando imágenes, etc.?

Gracias


En el MailMessage establezca la propiedad IsBodyHtml en true.

string to = "[email protected]"; string body = "Test"; SmtpClient SMTPServer = new SmtpClient("127.0.0.1"); MailMessage mailObj = new MailMessage(urEmail, to, subject, body); mailObj.IsBodyHtml = true; // This line SMTPServer.Send(mailObj);


Hay dos maneras de hacer esto:

  1. Insertar las imágenes dentro de su correo. (ver esta pregunta )

  2. Enlace a las imágenes a través de su atributo src de la etiqueta de imagen dentro de su correo HTML. Esto requiere que aloje los archivos de imagen en algún lugar de un servidor web al que puedan acceder los destinatarios.

En ambos casos, deberá enviar el correo con un cuerpo html.

mailObj.IsBodyHtml = true;


Para su pregunta sobre la adición de Imagen a su correo electrónico, si está solicitando una incrustación, puede usar etiquetas de anclaje de HTML o adjuntar el archivo de imagen al correo usando el método mailObj.Attachments.Add (), supongo.

Pero la mejor manera es enviar las imágenes como archivos adjuntos porque algunos firewalls solo bloquean las imágenes incrustadas pero permiten archivos adjuntos. De esa manera, estará mejor seguro de entregar el contenido, aunque no sea la manera perfecta.


Tienes que configurar mailObj .IsBodyHtml = true;


puede utilizar la siguiente idea para tomar una página ASPX y renderizarla en una cadena:

StringWriter writer = new StringWriter(); Server.Execute("Login.aspx", writer); string html = writer.ToString();

Si luego configura MailMessage.IsBodyHtml en true, puede enviar un mensaje HTML. Si desea utilizar imágenes y otras cosas, asegúrese de que el destinatario del correo electrónico pueda acceder a esas imágenes.