Ошибка ASP: операция недействительна из-за текущего состояния объекта
Попытка отладить случайную ошибку на довольно сложной странице ASP.net, есть много ADO.net MS-SQL, где я начал работу с проблемами. Однако до сих пор я не смог его сузить. Забавно, когда я отлаживаю код локально в VS (против того же соединения с БД), я не получаю ошибку. Однако, когда код запускается в IIS, он вызывает следующую ошибку. Кто-нибудь сталкивался с чем-то похожим?
Ошибка источника:
Необработанное исключение было создано во время выполнения текущий веб-запрос. Информация о происхождении и местоположении исключения можно идентифицировать с использованием трассировки стека исключений ниже.
Трассировка стека:
[InvalidOperationException: Operation is not valid due to the current state of the object.]
System.Web.HttpValueCollection.FillFromEncodedBytes(Byte[] bytes, Encoding encoding) +11368719
System.Web.HttpRequest.FillInFormCollection() +329
[HttpException (0x80004005): The URL-encoded form data is not valid.]
System.Web.HttpRequest.FillInFormCollection() +11482818
System.Web.HttpRequest.get_Form() +157
System.Web.HttpRequest.get_HasForm() +11483620
System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull) +141
System.Web.UI.Page.DeterminePostBackMode() +100
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +259
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272
Ответы
Ответ 1
Может ли это быть в связи с этой проблемой? Предлагаемое решение состоит в том, чтобы добавить следующее в ваш web.config:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="2000" />
</appSettings>
Скотт Гу также в блоге об этой уязвимости, обнаруженной в ASP.NET.