ASP.NET MVC4 - 显示包含字符串作为原始HTML的HTML

时间:2014-02-04 11:08:43

标签: html asp.net asp.net-mvc asp.net-mvc-4

我有一个从数据库中读取的字符串,其中包含我想要输出的HTML。尽管应用了HttpUtility.HtmlDecode(),但视图始终将字符串呈现为编码HTML(即&lt;SPAN&gt;而不是<SPAN>)。

我正在使用:

string test = WebUtility.HtmlDecode(myStr);
<span>@test</span>

我试过了:

string test = HttpUtility.HtmlDecode(myStr);
<span>@test</span>

<span>@HttpUtility.HtmlDecode(myStr)</span>

3 个答案:

答案 0 :(得分:5)

使用Html.Raw()

@Html.Raw("<span>Hello</span>")

Razor中的助手和其他元素的所有输出都通过HttpUtility.HtmlEncode,除非它们实现IHtmlString。但您最好的选择是使用Html.Raw()

答案 1 :(得分:2)

您需要使用@Html.Raw

@Html.Raw("<h1>Header</h1>")

将输出文本Header

答案 2 :(得分:1)

试试这个辅助方法

@Html.Raw(myStr)