我想在mvc的剃须刀页面的Html.Raw
中呈现剃须刀语法。下面提供了一个示例。有人可以告诉我这可能吗?我的目标是在浏览器中将rander html文本作为html行,同时还具有一些像zow这样的剃须刀语法。那怎么可能?
@Html.Raw(ViewBag.PageContent); //ViewBag.PageContent contains html+ razor syntax as string text
Html.Raw以上仅在浏览器中呈现html,但剃刀语法显示为纯文本,例如<title>@ViewData["Title"]</title>
有什么主意吗?
答案 0 :(得分:0)
我想我可以通过在HTML和Razor语法之间使用+分隔符为您找到解决方案。在此示例中,我有一个“ RazorPage.cshtml”文件,该文件依赖于相应的“ RazorPage.cshtml.cs”文件(不是之所以显示,是因为它不相关)。此示例将动态数据“注入”到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)