1. ホーム
  2. asp.net

[解決済み] ポストバック時に「オブジェクトの現在の状態により操作が有効でない」エラーが発生する

2022-04-23 11:43:47

質問

うまく動作していたaspxページが、突然、ポストバックが行われるたびに、エラー "オブジェクトの現在の状態のために操作が有効ではありません."が発生します。

スタックトレースは

<ブロッククオート

で System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded()

at System.Web.HttpValueCollection.FillFromEncodedBytes(Byte[] bytes.FillFromEncodedBytes), エンコーディング(Encoding)

at System.Web.HttpRequest.FillInFormCollection()

誰か助けてください。

どのように解決するのですか?

誰かがあなたのページにかなりの数のフォームフィールドを投稿しました。 最近のセキュリティアップデートで導入された新しいデフォルトの最大値は1000です。

Web.configに以下の設定を追加してみてください。 <appsettings> このブロックでは、MaxHttpCollectionの値を最大にしています。これは、.net Frameworkによって設定されたデフォルトをオーバーライドします。

<appSettings>
    <add key="aspnet:MaxHttpCollectionKeys" value="2001" />
 </appSettings>

詳しくはこちらをご覧ください。 これ の投稿をご覧ください。マイクロソフト社のセキュリティパッチに関する詳しい情報は、以下の記事をご覧ください。 このナレッジベースの記事