为特定页面指定MaxHttpCollectionKeys?

时间:2012-04-26 00:10:03

标签: asp.net exception web-config

我想知道是否有办法为特定页面更改此值,而不是为整个项目设置它。我们正在达到极限,但仅限于几页。我们的项目使用的是.NET 3.5。

对于那些不知道这个变量是什么的人来说,就是解决这个问题: http://support.microsoft.com/kb/2661403

基本上,如果您有很多表单键(超过1000),则在发回页面时会出现异常。您可以通过在web.config中指定来解决此问题:

有关此限制的几个问题,例如: 'Operation is not valid due to the current state of the object' error during postback

但是,我没有看到任何与为特定页面设置此内容相关的内容。

1 个答案:

答案 0 :(得分:5)

不,那是不可能的。它总是检查appSetting aspnet:MaxHttpCollectionKeys,如果缺少它,它将被设置为1000.你不能覆盖它,因为设置的读取和默认值是在内部类中完成的。

或许更好的方法是构建一个少于1000个项目的表单。也许是以巫师的形式。或者可以将多个值组合到单个数据结构中并在服务器上反序列化。