如何允许用户使用ASP.net MVC在特定字段中输入超文本标记语言。
我有一个很长的表单,其中有许多字段映射到控制器中的这个复杂对象。
我想让一个字段(描述)允许HTML,我将在稍后的时候对其执行我自己的卫生措施。
发布于 2012-07-30 20:17:20
那么属性上面的[AllowHtml]
属性呢?
发布于 2013-03-25 05:05:23
添加到模型:
using System.Web.Mvc;
和你的财产
[AllowHtml]
[Display(Name = "Body")]
public String Body { get; set; }
从我的观点来看,这段代码是避免这个错误的最好方法。如果你使用的是HTML编辑器,你就不会有安全问题,因为它已经被限制了。
发布于 2015-05-07 06:19:03
在特定属性上添加[AllowHtml]
是推荐的解决方案,因为有大量的博客和评论建议降低安全级别,这应该是不可接受的。
通过添加这一点,MVC框架将允许命中控制器并执行控制器中的代码。
但是,这取决于您的代码、过滤器等,响应是如何生成的,以及是否有任何可能触发另一个类似错误的进一步验证。
在任何情况下,添加[AllowHtml]
属性都是正确的答案,因为它允许在控制器中反序列化html。视图模型中的示例:
[AllowHtml]
public string MessageWithHtml {get; set;}
https://stackoverflow.com/questions/3621272
复制相似问题