c# - 如何将 viewbag 显示为 html?

标签 c# asp.net asp.net-mvc-3 viewbag

好吧,对于 ASP.Net MVC 来说还很陌生,如果这是一个愚蠢的问题,我很抱歉,但是我该如何将 ViewBag 的值显示为 HTML。例如,如果 ViewBag.SomeMessage 包含以下文本:

<h3>Test</h3><p>Test</p><p>Test</p><p>Test</p><p>Test</p><p>TEST</p>

我将如何真正让页面呈现为正常的 HTML?还是有一种我完全想念的更简单的方法来实现这一目标?

干杯!

最佳答案

大家对@Html.Raw()的使用是正确的但我想指出要小心,因为它会使您的网站容易受到 XSS 漏洞的影响。

我会结合 @Html.Raw(ViewBag.SomeMessage)Microsoft's Anti-XSS Library以确保您不会由此引入任何漏洞。

编辑: Anti-XSS 库的优势(如果你没有看过的话)是它有一个批准标记的白名单(例如 <b><h3> 等),因此只有批准的标记才会被取消 -编码。

编辑2: Here's an example这是如何完成的。

关于c# - 如何将 viewbag 显示为 html?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7285790/

相关文章:

c# - 为什么访问枚举定义中不存在的枚举成员(通过转换整数)不会出错

具有已知事件签名的 C# 2.0 动态事件订阅

c# - 如何使用 directshow.net 合并两个视频文件

asp.net - 什么是 Atypon 适配器?

c# - asp.net c# 中的 LifeRay 替代方案

html - CSS - 2 列布局 - ASP .NET MVC3/Razor

c# - MVVM 单个对象上的鼠标悬停事件

c# - 提交后如何在后面的代码中重置RadAsyncUpload?

javascript - Window.Print 使不透明的页面背景变为白色

asp.net - 图片下拉列表