http://support.microsoft.com/kb/2661403/zh-cn
Microsoft 安全更新 MS11-100 将 HTTP 请求中窗体项、文件和 JSON 成员的最大数量限制为 1000。由于此更改,ASP.NET 应用程序拒绝拥有超过 1000 种这些元素的请求。执行这些类型请求的 HTTP 客户端将被拒绝,且 Web 浏览器中会出现错误消息
这个异常在页面数据量小的时候并不会触发,只在页面数据量大的情况下才会出现
系统错误
错误编号:Ex0000000001描述:在运行库的外部环境出现异常.
请联系系统管理员.
URL 编码窗体数据无效。 Stack: 在 System.Web.HttpRequest.FillInFormCollection()
在 System.Web.HttpRequest.get_Form()
在 System.Web.HttpRequest.get_HasForm()
在 System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull)
在 System.Web.UI.Page.DeterminePostBackMode()
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
问题在这里.
出现这个异常的原因正是因为2011年12月29号那次微软发布的最后一次非正常更新程序引起的.在这次安全更新中对于asp.net单次的提交量做了一个最大量限制1000,出现这个异常正是因为页面提交量超过了1000这个限制.这个可以在web.config中增加参数来更改:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="5000" />
</appSettings>