如何发送HTML格式的电子邮件?
我可以让Web应用程序使用Windows任务计划程序发送自动电子邮件。 现在我想发送HTML格式的电子邮件使用以下方法,我写了发送电子邮件。
我的代码隐藏:
protected void Page_Load(object sender, EventArgs e) { SmtpClient sc = new SmtpClient("mail address"); MailMessage msg = null; try { msg = new MailMessage("xxxx@gmail.com", "yyyy@gmail.com", "Message from PSSP System", "This email sent by the PSSP system"); sc.Send(msg); } catch (Exception ex) { throw ex; } finally { if (msg != null) { msg.Dispose(); } } }
怎么做? 我只是想在电子邮件中join一个粗体的文字,也许只有一个图像。
将isBodyHtml
设置为true
可让您在邮件正文中使用HTML标签:
msg = new MailMessage("xxxx@gmail.com", "yyyy@gmail.com", "Message from PSSP System", "This email sent by the PSSP system<br />" + "<b>this is bold text!</b>"); msg.IsBodyHtml = true;
最好的方式发送HTML格式的电子邮件
此代码将在“ Customer.htm ”
<table> <tr> <td> Dealer's Company Name </td> <td> : </td> <td> #DealerCompanyName# </td> </tr> </table>
读取HTML文件使用System.IO.File.ReadAllText。 获取stringvariables中的所有HTML代码。
string Body = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath("EmailTemplates/Customer.htm"));
将特定stringreplace为您的自定义值。
Body = Body.Replace("#DealerCompanyName#", _lstGetDealerRoleAndContactInfoByCompanyIDResult[0].CompanyName);
调用SendEmail(string Body)函数并做程序发送邮件。
public static void SendEmail(string Body) { MailMessage message = new MailMessage(); message.From = new MailAddress(Session["Email"].Tostring()); message.To.Add(ConfigurationSettings.AppSettings["RequesEmail"].ToString()); message.Subject = "Request from " + SessionFactory.CurrentCompany.CompanyName + " to add a new supplier"; message.IsBodyHtml = true; message.Body = Body; SmtpClient smtpClient = new SmtpClient(); smtpClient.UseDefaultCredentials = true; smtpClient.Host = ConfigurationSettings.AppSettings["SMTP"].ToString(); smtpClient.Port = Convert.ToInt32(ConfigurationSettings.AppSettings["PORT"].ToString()); smtpClient.EnableSsl = true; smtpClient.Credentials = new System.Net.NetworkCredential(ConfigurationSettings.AppSettings["USERNAME"].ToString(), ConfigurationSettings.AppSettings["PASSWORD"].ToString()); smtpClient.Send(message); }
这对我有用
msg.BodyFormat = MailFormat.Html;
然后你可以在你的身体中使用html
msg.Body = "<em>It's great to use HTML in mail!!</em>"