在电子邮件中发送模板失败

时间:2013-01-08 18:46:23

标签: asp.net html email-templates

在asp.net中,我正在尝试在电子邮件中发送模板,因此当用户从我的网站收到消息时,它将在模板中,

e.g。当FB通过邮件向您发送通知时,它也有页眉和页脚,所以我想这样做,我试过但它没有在电子邮件正文中发送任何模板

CODE:

MailDefinition mailDefinition = new MailDefinition();
                mailDefinition.BodyFileName = "emailBody.htm";
                mailDefinition.From = "hunain.hafeez@gmail.com";

                MailMessage message = new MailMessage();
                message.From = new MailAddress(user_email);
                message.To.Add(new MailAddress(email));
                message.Subject = "Registration";
                message.IsBodyHtml = true;

                message.Body = "Congrats" + " " + userName + " " + " You have been shortlisted for interview. Please appear on " + " " + date +", "+time+" "+ "for interview";

                SmtpClient objClient = new SmtpClient("smtp.gmail.com", 587);
                objClient.EnableSsl = true;


                objClient.Credentials = new System.Net.NetworkCredential("hunain.hafeez", "*******");

2 个答案:

答案 0 :(得分:1)

简答:为了快速修复使用HTML mark-up templates,更灵活的解决方案是 Razor ,并带有电子邮件模板。

如何实现这一目标有不同的方法。但是,我偶然发现了一篇关于如何将Razor与电子邮件模板结合使用的文章。使用ASP.NET MVC 3推动了Razor,但MVC不需要使用Razor。这是处理电子邮件模板的非常流畅的处理

正如文章所指出的那样,“Razor的最佳之处在于它与其前身(webforms)不同,它与网络环境无关,我们可以轻松地将其托管在网络之外,并将其用作各种用途的模板引擎。”

Use Razor for Email Template outside ASP.NET MVC

答案 1 :(得分:0)

您的邮件正文中需要包含HTML标记。

即:

<html><body><b>Congrats ....