在MVC里从Controller发送一段带有HTML的文字到View视图时,MVC是会将这段代码进行转码的。
一、使用MvcHtmlString转HTML转码
如果想不让这段文字进行转码,以HTML的编码显示出来,可以使用MvcHtmlString。看一下下面这个DEMO。
1.Controller代码
public ActionResult BackDemo()
{
ViewBag.Title = "<p><b>This</b> is a test!</p>";
return View();
}
2.View显示代码
<body>
<div>
@(new System.Web.Mvc.MvcHtmlString(@ViewBag.Title))
或者使用
@MvcHtmlString.Create(@ViewBag.Title)
</div>
</body>
二、使用@Html.Raw
Controller的代码一样,View显示代码稍作修改
@Html.Raw(@ViewBag.Title)