在 HTML 内渲染 Razor 代码

Render Razor Code inside HTML

我有一些 HTML 保存在我的数据库中,后来修改并保存在一个变量中,最后使用 @Html.Raw( Model.Page.Html ).

在我的视图中打印出来

问题是,这个 HTML 拥有一些 Razor 代码,例如 ViewBag.Email。我如何在打印 HTML 之前渲染此 Razor 代码?我已经尝试将它放在 Partial View 上并在 HTML 中调用它然后打印它,但它也不起作用。

有些人向我指出了 RazorEngine 库,但我无法让它工作,我安装了 3.7.7 版,但文档对我来说有点混乱。

如果 RazorEngine 是我的最佳选择,任何人都可以提供一个示例,说明如何在打印之前渲染我的 HTML 吗?

编辑

这是我的问题的一个例子:我的联系页面里面有一个表单。在我的 Filter 中的某个时候,我检查了请求是否来自移动设备,并根据此信息在 ViewBag 上设置输入类型,例如:

<input type="@ViewBag.ITEmail" placeholder="E-mail" name="cEmail">

这个 HTML 从我的数据库中获取并传递给我的助手以修改一些信息,然后它使用 @Html.Raw( Model.Page.Html ).

打印在我的 View

Razor 视图是动态构建的。每次您编辑 razor 文件时,它都会在后台编译并内置到新的 dll 中。

基本上,您必须以某种方式触发构建过程,这通常是在更改 cshtml 文件时触发的。所以,你必须这样做。加载和保存文件。或者深入挖掘内部结构...