2008-11-18 68 views
27

我有一个由FCKEditor发出的HTML代码存储在数据库中,并希望将其显示(以及渲染)到视图上。所以,举例来说,一些存储为:如何从ASP.NET MVC视图显示存储在数据库中的HTML?

<>pre<>This is some sample text<>pre</&gt 

将显示给用户:

This is some sample text 

(随着预格式化文本相应的样式)

的观点已经有从ViewData显示所需的字符串,我只是不知道什么是最好的方式显示给用户。

回答

53

尝试

<%= System.Web.HttpUtility.HtmlDecode(yourEncodedHtmlFromYouDatabase) %> 

更多信息here @ MSDN online

hth!

+22

这并不Razor的合作,为剃须刀使用@ Html.Raw(System.Web.HttpUtility.HtmlDecode(Model.yourhtmlvalue)) – Niraj 2012-11-28 07:27:19

+4

检查我的答案的日期..它是PRE剃刀:P – 2012-11-28 22:55:30

46

由Pure.Krome提供的答案是完美无瑕的MVC2,但考虑到剃刀语法:

@Html.Raw(System.Web.HttpUtility.HtmlDecode(Model.yourEncodedHtmlFromYourDatabase)) 

另外,

@Html.Raw(Server.HtmlDecode(Model.yourEncodedHtmlFromYourDatabase)) 
2

要使用@Html.Raw(str)

MSDN更多

返回非HTML编码的标记。

此方法使用IHtmlString类包装HTML标记, 呈现未编码的HTML。

相关问题