【问题标题】:Render html and razor syntax inside Html.Raw在 Html.Raw 中渲染 html 和 razor 语法
【发布时间】:2019-03-04 15:47:47
【问题描述】:

我想在 mvc 的 razor 页面中的 Html.Raw 中呈现 razor 语法。下面提供了一个示例。谁能告诉我这可能吗?我的目标是在浏览器中将 html 文本作为行 html 进行排序,并使用如下所示的一些剃刀语法。这怎么可能?

@Html.Raw(ViewBag.PageContent); //ViewBag.PageContent contains html+ razor syntax as string text

以上 Html.Raw 仅在浏览器中呈现 html,但剃刀语法显示为纯文本,如 <title>@ViewData["Title"]</title>

有什么想法吗?

【问题讨论】:

  • 似乎与this 重复。
  • 没有。我已经检查了您建议的链接答案,但没有任何有效的答案。
  • 足以为您指明正确的方向。除非您正在寻找其他东西

标签: c# model-view-controller


【解决方案1】:

我想我有一个解决方案,通过在 HTML 和 Razor 语法之间使用 + 分隔符。在此示例中,我有一个依赖于相应“RazorPage.cshtml.cs”文件的“RazorPage.cshtml”文件(不是显示是因为它无关紧要)。本示例将动态数据“注入”到 title 标签和 p 标签中。

@page
@model ProjectName.Pages.RazorPageModel
@{
    ViewData["Title"] = "RazorPageTitle";
    ViewBag.PageContent = "<title>" + @ViewData["Title"] + "</title>" + "<p>View Source Shows the " + @ViewData["Title"]  + " Tag</p>";
}

<h1>RazorPage</h1>

@Html.Raw(ViewBag.PageContent)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-30
    • 2014-09-09
    • 1970-01-01
    • 2015-12-21
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 2021-12-04
    相关资源
    最近更新 更多