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

本文关键字:无效 操作 状态 对象 选择 下拉列表 于对象 | 更新日期: 2023-09-27 18:34:50

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

由于对象的当前状态,操作无效。说明:执行当前 Web 请求期间发生未经处理的异常。请查看堆栈跟踪,了解有关错误及其在代码中起源位置的详细信息。

异常

详细信息:系统无效操作异常:操作不是由于对象的当前状态而有效。

源错误:

在执行当前网络请求。有关原产地和位置的信息可以使用下面的异常堆栈跟踪来识别异常。

堆栈跟踪:

[无效操作异常:由于当前操作无效对象的状态。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(( +68System.Web.HttpRequest.get_HasForm(( +8735447
System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull(+97 System.Web.UI.Page.DeterminePostBackMode(( +63 System.Web.UI.Page.ProcessRequestMain(BooleanincludeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint(+133

<小时 />

版本信息: Microsoft .NET 框架版本: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 请求期间表单集合中的键。为了缓解 这个问题你需要增加这个数字。

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

<add key="aspnet:MaxHttpCollectionKeys" value="2000" />
<add key="aspnet:MaxJsonDeserializerMembers" value="2000" />

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

如果您调用,则可能会发生这种情况

 .SingleOrDefault() 

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

我知道

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