Tenía una página aspx que funcionaba bien, pero de repente recibo el error "La operación no es válida debido al estado actual del objeto". cada vez que se realiza una devolución de datos.
El seguimiento de la pila es:
en System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded ()
en System.Web.HttpValueCollection.FillFromEncodedBytes (Byte [] bytes, codificación de codificación)
en System.Web.HttpRequest.FillInFormCorm
Alguien puede ayudar?
Respuestas:
Alguien publicó bastantes campos de formulario en su página. El nuevo valor máximo predeterminado introducido por la actualización de seguridad reciente es 1000.
Intente agregar la siguiente configuración en el
<appsettings>
bloque de su web.config . en este bloque está maximizando los valores de MaxHttpCollection, esto anulará los valores predeterminados establecidos por .net Framework. puede cambiar el valor en consecuencia según sus necesidades de formularioPara obtener más información, lea esta publicación. Para obtener más información sobre el parche de seguridad de Microsoft, puede leer este artículo de la base de conocimiento
fuente
No apliqué paginación en mi vista de cuadrícula y se extiende a más de 600 registros (con casillas de verificación, botones, etc.) y el valor de 2001 no funcionó. Puede aumentar el valor, digamos 10000 y probar.
fuente
Para ASP.NET 1.1, esto todavía se debe a que alguien publica más de 1000 campos de formulario, pero la configuración debe cambiarse en el registro en lugar de un archivo de configuración. Debe agregarse como un DWORD llamado MaxHttpCollectionKeys en el registro bajo
para ediciones de 32 bits de Windows y
para ediciones de 64 bits de Windows.
fuente
Si el seguimiento de su pila parece ser el siguiente, está enviando una gran carga de objetos json al servidor
Para la resolución, actualice su configuración web con la siguiente clave. Si no puede obtener el seguimiento de la pila, utilice Fiddler . Si todavía no ayuda, intente aumentar el número a 10000 o algo así.
Para más detalles, lea este artículo de Microsoft kb
fuente