MVC修改视图和控制器之间的对象

时间:2014-09-11 05:20:50

标签: asp.net-mvc

我正在将一个文本块从视图发布到控制器以用于消息系统。

有没有办法在它到达Controller之前捕获它,以某种方式修改它(比如删除任何不需要的东西,如HTML元素),然后让Controller接收它? / p>

目的是在不必修改验证设置的情况下停止A potentially dangerous Request.Form value was detected

编辑:我正在尝试找到一个不涉及任何Ajax或客户端修改的解决方案 - 我希望它是防弹的,而不是依赖于启用了JS的人。< / p>

1 个答案:

答案 0 :(得分:0)

A potentially dangerous Request.Form value was detected消息的目的不是允许在代码中进行危险的注入。

您可以在保存之前允许所有HTML或拒绝危险注入或编码值。

如果您选择允许所有HTML使用[AllowHtml]帮助

- 或 -

如果您想防止使用危险脚本,

[ValidateInput(true)]
[HttpPost]
public ActionResult SomeAction(FormCollection collection) 
{

}

- 或 -

使用自定义属性使用Server.HtmlEncode方法对所有值进行编码

Ex:Server.HtmlEncode("<script>unsafe</script>"); 在保存之前。