【发布时间】:2013-03-27 21:13:07
【问题描述】:
您好,我需要使用 c# windows application 中的模板发送电子邮件。我已经创建了一个模板,但我无法通过 html 模板传递参数。这是我正在使用的模板。
对于这个 HTML 模板,我在我的 Windows 应用程序中调用它并通过 gmail smtp 发送。我能够发送邮件,但无法将参数传递给它。请帮帮我。这是我在 Windows 应用程序中调用的代码
try
{
using (StreamReader reader = File.OpenText("H:\\Visitor Management_Project\\Visitor Management_Project\\Visitor Management_Project\\EmailTemplate.htm"))
{
SmtpClient SmtpServer = new SmtpClient("173.194.67.108", 587);
SmtpServer.UseDefaultCredentials = false;
SmtpServer.DeliveryMethod = SmtpDeliveryMethod.Network;
SmtpServer.Credentials = new System.Net.NetworkCredential("ambarishkesavarapu@gmail.com", "*******");
//SmtpServer.Port = 587;
SmtpServer.Host = "smtp.gmail.com";
SmtpServer.EnableSsl = true;
message = new MailMessage();
message.Subject = "Visitor Arrived";
//message.SubjectEncoding = System.Text.Encoding.UTF8;
message.IsBodyHtml = true;
message.Body = "EmailTemplate.htm";
//message.BodyEncoding = System.Text.Encoding.UTF8;
message.From = new MailAddress("ambarishkesavarapu@gmail.com");
message.To.Add(lblCPEmail.Text);
message.Priority = MailPriority.High;
message.Body = reader.ReadToEnd();
message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
SmtpServer.Send(message);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
如何将参数添加到 HTML 模板中,我在文本框的同一页面中获取该模板的所有参数。请帮帮我
【问题讨论】:
-
您的模板是什么样的?或者您是否也在问最好的模板格式是什么?
-
当你bedug时,message.Body会被设置成什么?文本是否会从文件中读出?
-
在重新阅读您的问题时......您似乎正在寻找将您的值从 Windows 窗体中的控件(文本框等)注入模板 html 中的模板位置的最佳方法身体?我对么?如果是这样,你能提供模板文件吗?通常我会用一些正则表达式替换来做到这一点,但这取决于你模板的格式。
标签: c# html email windows-applications