是否可以在Html.Raw()
中渲染Razor?我生成了一个动态页面,它使用Html.Raw()
方法呈现在控制器中创建的页面。我的原始html中有剃刀标签。也就是说,我试图通过
@Html.Raw(Model.myRawHtmlContainingRazorTags);
Model.myRawHtmlContainingRazorTags
包含
<html>
...
...
@Model.TheLink
...
...
<html>
我需要在cshtml中调用Model.TheLink
时呈现@Html.Raw(Model.myRawHtmlContainingRazorTags)
的值。
答案 0 :(得分:3)
您可能遇到一些架构问题,导致您在Model属性上有一些剃刀代码。
无论如何,你可以通过使用一些外部库来实现,例如RazorTemplates。
以下是一个示例:
var template = Template.Compile(Model.myRawHtmlContainingRazorTags);
@Html.Raw(template.Render(Model));