由于对象的当前状态,操作无效。 当我选择下拉列表

我在aspx页面上有radcombo框,当我从中选择任何选项时,它会在’/’应用程序中出现错误`服务器错误。

由于对象的当前状态,操作无效。 描述:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

exception详细信息:System.InvalidOperationException:由于对象的当前状态,操作无效。

来源错误:

在执行当前Web请求期间生成了未处理的exception。 可以使用下面的exception堆栈跟踪来识别有关exception的起源和位置的信息。

堆栈跟踪:

[InvalidOperationException:由于对象的当前状态,操作无效。
System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded()+2692302 System.Web.HttpValueCollection.FillFromEncodedBytes(Byte [] bytes,Encoding encoding)+61
System.Web.HttpRequest.FillInFormCollection()+ 148

[HttpException(0x80004005):URL编码的表单数据无效。] System.Web.HttpRequest.FillInFormCollection()+ 206
System.Web.HttpRequest.get_Form()+ 68
System.Web.HttpRequest.get_HasForm()+ 8735447
System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull)+97 System.Web.UI.Page.DeterminePostBackMode()+63 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)+133


版本信息:Microsoft .NET Framework版本:2.0.50727.3634; ASP.NET版本:2.0.50727.3634`

来自http://codecorner.galanter.net/2012/06/04/solution-for-operation-is-not-valid-due-to-the-current-state-of-the-object-error/

问题发生是因为Microsoft安全更新MS11-100在HTTP POST请求期间限制Forms集合中的键数。 要缓解此问题,您需要增加该数量。

这可以在部分的应用程序Web.Config中完成(如果不存在,则直接在下创建部分)。 在该部分添加2行,类似于下面的行:

   

上面的示例将限制设置为2000个键。 这将解除限制,错误应该消失。

如果你打电话会发生这种情况

  .SingleOrDefault() 

在具有2个或更多元素的IEnumerable上。

我知道这个问题的答案已被接受,但有人在评论中询问是否有可以在web.config之外完成的解决方案。 我有一个ListView产生完全相同的错误,并将EnableViewState设置为false为我解决了这个问题。