Asp.net mvc 使用RazorEngine电子邮件模板在正文中生成html

Asp.net mvc 使用RazorEngine电子邮件模板在正文中生成html,asp.net-mvc,razorengine,Asp.net Mvc,Razorengine,我正在使用生成带有模板的电子邮件 我遇到的问题是,我无法在电子邮件正文中添加换行符 var model = new EmailModel { Destination = "anon@gmail.com", Subject = "Some Subject", Body = "Hello <br> Break <br> it <br> up" }; var s

我正在使用生成带有模板的电子邮件

我遇到的问题是,我无法在电子邮件正文中添加换行符

var model = new EmailModel
        {
            Destination = "anon@gmail.com",
            Subject = "Some Subject",
            Body = "Hello <br> Break <br> it <br> up"
        };

var service = TemplateManager.RazorService;
var htmlBody = service.RunCompile("EmailTemplate.cshtml", model.GetType(), model);
await EmailService.SendEmail(model.Destination, model.Subject, htmlBody);

但是它仍然无法解码html,有什么想法吗?

你的

标记在正文中是不正确的



替换为

正文中的

标记不正确


替换为

更新:

解决方案如下:

在这里:

使用@(新的RawString(“这里的html字符串”)或@Raw(“html”)就足够了 而不是@Html.Raw(“此处为Html字符串”)

更新:

解决方案如下:

在这里:

使用@(新的RawString(“这里的html字符串”)或@Raw(“html”)就足够了 而不是@Html.Raw(“此处为Html字符串”)


htmlBody
中的
RunCompile
方法返回什么类型的HTML字符串?同时显示您的
EmailTemplate.cshtml
内容代码。在
htmlBody
RunCompile
方法返回哪种HTML字符串?同时显示您的
EmailTemplate.cshtml
内容代码。
@Html.Raw(Model.Body)