C# 将SMTP客户端邮件转换为HTML

C# 将SMTP客户端邮件转换为HTML,c#,C#,我对mvc4应用程序有一个问题,我想发送一个用html+C创建的生成html页面。问题是,当我收到电子邮件时,我会看到我的c代码,如下面的示例: 但在邮件预览中,我可以看到如下正确值: 这是我的EmailTemplate方法: <pre> public static async Task<string> EMailTemplate (string template) { var templateFilePath =Hostin

我对mvc4应用程序有一个问题,我想发送一个用html+C创建的生成html页面。问题是,当我收到电子邮件时,我会看到我的c代码,如下面的示例:

但在邮件预览中,我可以看到如下正确值:

这是我的EmailTemplate方法:

<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或任何其他编辑器中运行视图,您可能会对