C# 将SMTP客户端邮件转换为HTML
我对mvc4应用程序有一个问题,我想发送一个用html+C创建的生成html页面。问题是,当我收到电子邮件时,我会看到我的c代码,如下面的示例: 但在邮件预览中,我可以看到如下正确值: 这是我的EmailTemplate方法:C# 将SMTP客户端邮件转换为HTML,c#,C#,我对mvc4应用程序有一个问题,我想发送一个用html+C创建的生成html页面。问题是,当我收到电子邮件时,我会看到我的c代码,如下面的示例: 但在邮件预览中,我可以看到如下正确值: 这是我的EmailTemplate方法: <pre> public static async Task<string> EMailTemplate (string template) { var templateFilePath =Hostin
<pre>
public static async Task<string> EMailTemplate (string template)
{
var templateFilePath =HostingEnvironment.MapPath("~/Views/Home/") + template + ".cshtml";
StreamReader objstreamreaderfile = new StreamReader(templateFilePath);
var body = await objstreamreaderfile.ReadToEndAsync();
objstreamreaderfile.Close();
return body;
}
</pre>
公共静态异步任务EMailTemplate(字符串模板)
{
var templateFilePath=HostingEnvironment.MapPath(“~/Views/Home/”)+template+“.cshtml”;
StreamReader objstreamreaderfile=新的StreamReader(templateFilePath);
var body=await objstreamreaderfile.ReadToEndAsync();
objstreamreaderfile.Close();
返回体;
}
如果您知道如何将我的模板转换为Html而不包含我的C#代码,请联系我们
谢谢,使用带有内联CSS和绝对图像URI的纯Html模板(不是cshtml视图)作为电子邮件正文和填充文本模板。请参见下图 在上图中,带有####…##的字段是文本模板
现在以字符串形式阅读此HTML模板,并使用C代码(实际上是任何语言代码)将########字段替换为一些动态信息。您可以使用
string.Replace()
方法将这些字段替换为实际值。我已经用过这个方法,效果很好。我希望这也能对您有所帮助。使用纯Html模板(而不是cshtml视图),为电子邮件正文使用内嵌CSS和绝对图像URI,并填充文本模板。请参见下图
在上图中,带有####…##的字段是文本模板
现在以字符串形式阅读此HTML模板,并使用C代码(实际上是任何语言代码)将########字段替换为一些动态信息。您可以使用
string.Replace()
方法将这些字段替换为实际值。我已经用过这个方法,效果很好。我希望这也能对您有所帮助。您在哪里看到邮件预览?通过在Visual Studio或任何其他编辑器中运行视图?您可能会对在何处看到邮件预览感兴趣?通过在Visual Studio或任何其他编辑器中运行视图,您可能会对