1

巨大なテーブルがあり、セルの数が 1000 を少し超えることがあります。すべてのセルにテキスト ボックスが含まれています。セルは、ユーザー コントロールとして実装されます。検証の制約があり、任意の時点で約 100 個のセルを埋めることができます。正確な数ではありませんが、1000 をはるかに下回ることが保証されています。このフォームを投稿すると、空のフィールドも返されるため、MaxHttpCollectionKeys の制限に達しました。

このアプリケーションの性質上、web.config でこの制限をオーバーライドすることは非常に望ましくありませんが、何もしないよりはましです。デフォルトでテキストボックスをポストバックに含めないスマートな方法はありますか?

4

2 に答える 2

0

これが最善の解決策です。name属性なしですべてのテキストフィールドを作成します。このように、それらは二度と投稿されません。これはまさに私が必要としたトリックです。ポストバック中に、テキストフィールドの値をJSONで保存し、非表示のフィールドに配置します。これは自動的にポストバックされます。その後、ポストバックを含む通常のページライフサイクルを使用できます。

于 2012-07-18T05:51:55.970 に答える
0

JavaScript を使用した別の回避策があります。テキストボックスをスクロールして、変更の json オブジェクトを作成できます。これを投稿してから、テーブルを更新してください。

ここで暗示されているのは、通常のボタンを介してポストバックしないということです。

于 2012-05-29T16:28:30.047 に答える