如何访问未经验证的项目Request.Form集合在MVC 3(How can I access u

2019-09-22 13:04发布

我使用ASP.NET MVC 3与.NET 4.0。 我对其中的一个属性需要HTML内容被允许的典范。 我已经放在AllowHtml在我的模型属性,它允许HTML对财产的属性。 这一工程本身。

我也使用Uploadify在我的网站的其他部分Flash上传。 由于问题闪光灯和会议,我使用类似于在代码中的一些代码SWFUpload的例子 ,让我的文件上传访问会话数据。 基本上我访问Request.Form在直接收集Application_BeginRequest处理程序。

我遇到的问题是,当允许HTML形式提出,我得到一个HttpRequestValidationException当代码Application_BeginRequest处理程序访问Request.Forms[key]集合。

就像我在开始时说,我已经试过AllowHtml属性。 我也试过在使用动作和控制器级别禁用验证ValidateInput(false)的属性,但我相信我在那些申请请求生命周期为时尚早。 反正是有访问Request.Form含有“潜在危险”收集数据,而无需禁用请求验证整个网站?

Answer 1:

你问这样的事: 验证与Request.Unvalidated()在ASP MVC 3 RC和.NET 4的要求 ?

Request.Unvalidated().Params[""]


Answer 2:

为了记录在案,这样做的另一种方式是通过创建一个未经验证的对象:

var unvalidatedRequest = System.Web.Helpers.Validation.Unvalidated(Request);

然后,你只需要访问unvalidatedRequest对象,而不是反复打到Unvalidated()

Validation.Unvalidated方法有不同的重载。



文章来源: How can I access unvalidated items in the Request.Form collection in MVC 3