如何将viewbag显示为html?
好的,对于ASP.Net MVC来说还是新手,所以如果这是一个愚蠢的问题我很抱歉,但我如何将ViewBag的值显示为HTML。 例如,如果ViewBag.SomeMessage包含以下文本:
Test
Test
Test
Test
Test
TEST
我将如何实际将页面呈现为普通HTML? 或者有一种更简单的方法来实现这一点,我完全失踪了?
干杯!
每个人在使用@Html.Raw()
都是正确的,但我想指出要小心这一点,因为它可能会使您的网站容易受到XSS漏洞的影响。
我会将@Html.Raw(ViewBag.SomeMessage)
与Microsoft的Anti-XSS Library结合使用 ,以确保不会引入任何漏洞。
编辑: Anti-XSS库的优势(如果你还没有看过)是它有一个批准的标记的白名单(如 ,
等),以便只有批准的标记将是未编码。
Edit2: 这是一个如何完成的例子 。
您将使用Raw
方法:
@Html.Raw(ViewBag.SomeMessage)
我想你可以这样做:
@Html.Raw(ViewBag.SomeMessage)
@Html.Raw(ViewBag.SomeHtmlProperty)
这就是说,这是我的免责声明:不要使用ViewBag。 使用强类型视图和视图模型。 ViewBag / ViewData就像是ASP.NET MVC应用程序的癌症。
将数据作为HTML编码的字符串放入ViewBag,不应再次编码。
ViewBag.myBag = MvcHtmlString.Create(myCode ?? string.Empty);
然后用
@ViewBag.myBag
MvcHtmlString的文档 。
上述就是C#学习教程:如何将viewbag显示为html?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1031536.html