发送包含HTML文件作为正文的电子邮件(C#)

如何使用HTML文件设置MailMessage的正文?

只需将MailMessage.BodyFormat属性设置为MailFormat.Html ,然后将html文件的内容转储到MailMessage.Body属性:

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

我的情况下你使用的是System.Net.Mail.MailMessage ,你可以使用:

 mail.IsBodyHtml = true; 

System.Web.Mail.MailMessage已废弃,但如果使用它: mail.BodyFormat工作。

这是一个简单的例子 。 这里有一个包含嵌入式图像的图像 (与网络源的img链接相反,许多电子邮件客户端不会显示)。

编辑:您当然可以使用File.ReadAllText读取html文件,您可以在链接中使用它。