我有一个带有属性 Content 的模型,其中包含 HTML 字符串。
var model = new { Content = ... }
Razor.Parse(templateBody, model)
如何使用独立的 Razor 呈现此字符串。
我试过:
@(new HtmlString(Model.Content))
并且
@(HttpUtility.HtmlDecode(Model.Content))
Model.Content 始终呈现 HTML 转义。
我有一个带有属性 Content 的模型,其中包含 HTML 字符串。
var model = new { Content = ... }
Razor.Parse(templateBody, model)
如何使用独立的 Razor 呈现此字符串。
我试过:
@(new HtmlString(Model.Content))
并且
@(HttpUtility.HtmlDecode(Model.Content))
Model.Content 始终呈现 HTML 转义。
这应该工作Html.Raw(Model.Content)
在 RazorEngine 库中,特殊的“do-not-escape-me”类型是RazorEngine.Text.IEncodedString. 在模板基类上使用简单的辅助方法:
@Raw("<script>alert('!');</script>")
要说服 VS 和 Resharper 为您提供 IntelliSense,请在模板顶部添加以下行:
@inherits RazorEngine.Templating.TemplateBase