MailMessage c# - How to make it HTML and add images etc?

旧城冷巷雨未停 提交于 2019-11-26 14:41:22

问题


string to = "email@hotmail.co.uk";
 string body = "Test";
 SmtpClient SMTPServer = new SmtpClient("127.0.0.1");
 MailMessage mailObj = new MailMessage(urEmail, to, subject, body);
 SMTPServer.Send(mailObj);

This is how i am currently sending a test email. How do i make this html and be able to make the email sent out look better by adding images etc?

Thanks


回答1:


On the MailMessage set the property IsBodyHtml to true.

string to = "email@hotmail.co.uk";
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);



回答2:


You have to set mailObj .IsBodyHtml = true;




回答3:


you can use the following idea to take an ASPX page and render it to a string:

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

If you then set the MailMessage.IsBodyHtml to true you can send an HTML message. If you want to use images and other stuff make sure that the receiver of the email can access those images.




回答4:


There are two ways of doing this:

  1. Embed the images inside your mail. (see this question)

  2. Link to the images through your src attribute of the image tag inside your HTML mail. This needs you to host the image files somewhere on a webserver which the recipients can access.

In both cases you will need to send the mail with a html body.

mailObj.IsBodyHtml = true;



回答5:


For your question about adding Image to your email, if your asking for embedding then you can use Anchor tags of HTML or else attach the image file to the mail by using mailObj.Attachments.Add() method i guess.

But the best way is to send the images as attachments because some firewalls just blocks the embedded images but allows attachments. So that way your better safer in delivering the content, though its not a perfect way.



来源:https://stackoverflow.com/questions/7873155/mailmessage-c-sharp-how-to-make-it-html-and-add-images-etc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!