使用MVC以HTML格式发送邮件

问题描述:



我需要以HTML格式发送邮件.我用谷歌搜索了很多,但是我无法以html格式获得预期的结果.任何人都可以帮我以下代码中缺少的内容来获取html格式的邮件.

C#代码:-
--------

MailAddress发件人=新MailAddress(ConfigurationManager.AppSettings ["smtpUser"]);
字符串MailId = Convert.ToString(Session ["EmailID"]);

SmtpClient smtp =新的SmtpClient()
{
主机= ConfigurationManager.AppSettings ["smtpServer"],
端口= Convert.ToInt32(ConfigurationManager.AppSettings ["smtpPort"]),
UseDefaultCredentials = false,
EnableSsl = true,
凭据=新的System.Net.NetworkCredential(ConfigurationManager.AppSettings ["smtpUser"],ConfigurationManager.AppSettings ["smtpPass"])),
DeliveryMethod = SmtpDeliveryMethod.Network
};

Hi,

I need to send the mail in HTML Format. I googled lot but i could not able to get the expected result as html format. Can anyone help what i am missing in this following code to get the html format mail.

C# Code :-
--------

MailAddress sender = new MailAddress(ConfigurationManager.AppSettings["smtpUser"]);
string MailId = Convert.ToString(Session["EmailID"]);

SmtpClient smtp = new SmtpClient()
{
Host = ConfigurationManager.AppSettings["smtpServer"],
Port = Convert.ToInt32(ConfigurationManager.AppSettings["smtpPort"]),
UseDefaultCredentials = false,
EnableSsl = true,
Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["smtpUser"], ConfigurationManager.AppSettings["smtpPass"]),
DeliveryMethod = SmtpDeliveryMethod.Network
};

System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
              string text = "<table><tr><td>EmpId</td><td>Emp name</td><td>age</td></tr><tr><td>value</td><td>value</td><td>value</td></tr></table>";
              msg.From = sender;
              msg.To.Add(MailId);
              msg.Body = text;
              msg.IsBodyHtml = true;


smtp.Send(mail.From,mail.To,mail.Subject,msg.Body);


smtp.Send(mail.From, mail.To, mail.Subject, msg.Body);

我认为您应该使用
I think you should use
smtp.Send(msg);


代替


instead of

smtp.Send(mail.From, mail.To, mail.Subject, msg.Body);