发送电子邮件,因为HTML不起作用.为什么?

ala*_*a27 1 .net html c# email

我有这个代码:

string email = "myemail@gmail.com";
SmtpClient client = new SmtpClient();
client.Host = "smtp.gmail.com";
client.Port = 587;
client.EnableSsl = true;
client.Credentials = new NetworkCredential(email, "mypassword");
MailMessage mailMessage = new MailMessage(email, toEmail);
mailMessage.Subject = title;
mailMessage.Body = message;
mailMessage.IsBodyHtml = true;
mailMessage.BodyEncoding = System.Text.Encoding.UTF8;

client.Send(email, toEmail, title, message);
Run Code Online (Sandbox Code Playgroud)

我的信息是:

message = "hello <b>world</b>."
Run Code Online (Sandbox Code Playgroud)

当我收到电子邮件时,它显示的<b>...</b>不是大胆!

它出什么问题了?!

SLa*_*aks 7

您创建一个包含mailMessageHTML格式的消息的变量,但之后您忽略它并将正文作为纯文本发送.

你需要发送mailMessage自己.


saa*_*rim 5

您的消息不是有效的 html。

用 html 和 body 标签将您的消息括起来

message = "<html><body>hello <b>world</b>.</body></html>"
Run Code Online (Sandbox Code Playgroud)

也感谢@SLaks 指出这一点

在您的示例中,您应该发送 mailMessage 而不是 message:

client.Send(mailMessage);
Run Code Online (Sandbox Code Playgroud)