首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在使用RazorEngine (不是从MVC)时输出原始html?

如何在使用RazorEngine (不是从MVC)时输出原始html?
EN

Stack Overflow用户
提问于 2012-03-12 10:49:05
回答 6查看 66.6K关注 0票数 110

我正在尝试生成具有HTML内容的电子邮件。这个内容已经经过了卫生检查,所以在这方面我并不担心,但是当我调用:

Razor.Parse(template, model);

在以下Razor模板上:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
    <body>
        @(new System.Web.HtmlString(Model.EmailContent))
    </body>
</html>

输出的电子邮件是HTMl编码的,但我需要它解码。我如何才能做到这一点呢?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-03-13 00:39:18

与MVC的Razor View引擎一样,RazorEngine将自动对写入模板的值进行编码。为了解决这个问题,我们引入了一个名为IEncodedString的接口,默认实现是HtmlEncodedStringRawString

要使用后者,只需调用TemplateBase的内置Raw方法

@Raw(Model.EmailContent)
票数 190
EN

Stack Overflow用户

发布于 2013-05-14 09:47:53

仅供参考,我有一个包含@Html.Raw(...)的分支语法如下:

https://github.com/Antaris/RazorEngine/pull/105

票数 15
EN

Stack Overflow用户

发布于 2018-01-19 16:42:21

我使用的是RazorEngine 3.8.2,而@Raw(Model.Content)对我来说工作得很好。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9661180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档