【发布时间】:2017-11-16 21:16:56
【问题描述】:
所以,我在 ASP.Net MVC 5 中有一个类似 wordpress 的网站,我可以在其中为我的客户创建网站。现在一个客户的网站需要一个文本框来添加一个 html 内容。因此,我为该文本框添加了[AllowHTML],因此我能够成功地将文本框内容保存到数据库。现在我的问题是如何在前端渲染。我的意思是我有一个模型属性作为
public string htmlcontent {get;set;}
我从数据库中得到的值是
<p>abc</p>.
现在在我的 cshtml 文件中呈现它的最佳方式是什么。如果我做类似的事情
@Model.htmlcontent
我的输出只是 <p>abc</p> 作为 Plain TEXT 但我希望 DOM 能够理解 html 内容和属性并相应地呈现它。
【问题讨论】:
-
如果你允许每个人不仅可以输入 HTML,还可以输入 javascipt,然后在每个用户的机器上执行。请熟悉 XSS(跨站脚本):owasp.org/index.php/Cross-site_Scripting_(XSS)
-
只有我可以作为管理员访问设置页面。所以基本上只有我可以登录到设置页面并根据客户的需求进行更改。
-
但我会阅读这篇文章。谢谢。 :)
标签: html asp.net asp.net-mvc razor asp.net-mvc-5