2009-05-22 11 views
0

元同僚は、かなり編集可能なグリッド(タイムシートを考える)だったアプリケーションを開発しました。.Net Microsoft Ajax Viewstate Issue

MS Ajaxを使用し、グリッドを[更新]パネルでラップしました。

複合オブジェクトグラフはviewstateに保存されていたので、ページが更新されるたびにセルが更新されるたびに、すべてのグリッドとviewstateがポストバックのクライアントからサーバーに渡されます。 viewstateサイズはほぼメガパフォーマンスのパンツです。

私はAjaxの理解から、最小限の量のデータと必要なものだけを渡すべきです。これには書き換えが必要となり、コストがかかる。その他の選択肢は何ですか?

+0

「最小量のデータ」は有効な文ではありません。書き換えにjqueryを使用することはお勧めできません。 – balint

答えて

0

返信いただきありがとうございます。カードには書き換えがありますが、その間にアプリケーションにパッチを適用してクライアントを満足させ、書き直す時間を買う必要があります。

私は、SQLデータベースにViewStateを保存することを検討しているクイックフィックスのリストが必要です。

ありがとう、MS AjaxのB

2

理想的には、ViewsStateを無効にしてデータグリッドを使用する必要があります。これは、すべてのポストバックにグリッドをバインドすることを意味します。

ControlStateは、コントロールの状態を保持することが絶対に必要な場合は、ViewStateの代わりに使用されます。 ControlState hereについて詳しく読むことができます。

EDIT:また、軽量なajax-yデータグリッドが多数用意されています。 Flexigridがその1つです。これはjQueryの実装です。