Saya memiliki halaman aspx yang berfungsi dengan baik, tetapi tiba-tiba saya mendapatkan kesalahan "Operasi tidak valid karena keadaan objek saat ini." setiap kali postback dilakukan.
Jejak tumpukan adalah:
di System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded ()
di System.Web.HttpValueCollection.FillFromEncodedBytes (Byte [] byte, Encoding encoding)
di System.Web.HttpRequest.FillInFormCollection ()
Adakah yang bisa membantu?
Jawaban:
Seseorang memposting beberapa kolom formulir ke halaman Anda. Maks default baru yang diperkenalkan oleh pembaruan keamanan terbaru adalah 1000.
Coba tambahkan pengaturan berikut di
<appsettings>
blok web.config Anda . di blok ini Anda memaksimalkan nilai MaxHttpCollection ini akan menimpa default yang ditetapkan oleh .net Framework. Anda dapat mengubah nilai sesuai kebutuhan formulir AndaUntuk informasi lebih lanjut silakan baca posting ini . Untuk informasi lebih lanjut tentang patch keamanan oleh microsoft Anda dapat membaca artikel Pangkalan Pengetahuan ini
sumber
Saya tidak menerapkan paging pada gridview saya dan meluas ke lebih dari 600 catatan (dengan kotak centang, tombol, dll.) Dan nilai tahun 2001 tidak berfungsi. Anda dapat meningkatkan nilainya, katakan 10.000 dan uji.
sumber
Untuk ASP.NET 1.1, ini masih karena seseorang memposting lebih dari 1000 bidang formulir, tetapi pengaturan harus diubah dalam registri daripada file konfigurasi. Itu harus ditambahkan sebagai DWORD bernama MaxHttpCollectionKeys dalam registri di bawah
untuk Windows edisi 32-bit, dan
untuk Windows edisi 64-bit.
sumber
Jika jejak stack Anda terlihat seperti berikut, maka Anda mengirim banyak objek json ke server
Untuk resolusi, harap perbarui konfigurasi web Anda dengan tombol berikut. Jika Anda tidak bisa mendapatkan jejak tumpukan maka silakan gunakan fiddler . Jika masih tidak membantu maka silakan coba tambahkan angkanya menjadi 10.000 atau apalah
Untuk lebih jelasnya, silahkan baca ini artikel kb Microsoft
sumber