Html.Raw在asp.net mvc中无法正常工作

23

我有一些存储在表格中的HTML代码。这是一些示例数据:

<p><span style="font-size: small; color: #ff0000;"><span style="font-size: small;"> <span style="font-size: large; color: #000000;">ਮਾਂ</span><br />  <br />ਚਾਵਾਂ ਸਧਰਾਂ ਦੇ ਨਾਲ ਮਾਏ ਜੋ ਤੂੰ ਬੂਟਾ ਲਾਇਆ,<br />ਦੇ ਮਮਤਾ ਦਾ ਪਾਣੀ ਅੱਜ ਓਹ ਭਰ ਜੋਬਨ ਤੇ ਆਇਆ,<br />

我正在尝试在网页上显示内容。我使用的是ASP.NET MVC Razor视图,代码如下:

@Html.Raw(blog.Body)
但它并没有起作用,有人能帮忙看看是什么原因吗?
谢谢, Parminder

6
“它不起作用”不足以描述问题。请阅读 http://tinyurl.com/so-hints 并编辑您的问题。 - Jon Skeet
1个回答

56

请尝试这个方法:

@Html.Raw(HttpUtility.HtmlDecode(blog.Body));

并且请告诉我是否有效。


6
如果有人在博客上发布JavaScript,会发生什么?除非你能保证脚本永远不会进入数据库,否则你真的应该对HTML进行消毒处理。SO的重点是回收问题,现在人们会阅读这篇文章并认为使用Raw是可以的。 - RickAndMSFT
是的,我已将其标记为答案。非常感谢。Rick,非常感谢您的建议,我已经处理好了。再次感谢。 - Parminder
感谢您,很高兴看到您微笑着 :) - Mohammed Swillam
1
@RickAndMSFT:你的观点非常有价值和相关。如果您能提供它作为POST / answer(包括如何防止它/处理HTML输入以保存到数据库),我会很高兴的。 - Shyju
1
这对我也起作用了,有没有什么解释为什么需要这样做的地方? - War Gravy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接