1

現在、ページの最適化の問題が発生しています。これはダッシュボードのようなページで、3つのグループを持つAspxNavBar(アコーディオンコントロールのアナログ)が含まれています。グループには、コールバックパネル内に2つのグラフ、コールバックパネル内に4つのグリッド(1つのメイン+ 3つの依存)、多くのコンボボックスを備えたフィルタリングコントロールが含まれています。コールバックパネル。

ページの総重量は約4メガバイトであり、さらに、ページの最初の読み込みは、依存グリッド(メイングリッドで最初の行が「選択」されている)およびグラフ付きのパネル(グラフのサイズ変更用)ですぐにコールバックを開始します)。

ページサイズ、たとえばhtmlのサイズやdevexpressコントロールのコールバック/ビュー状態を減らす方法はありますか?行キャッシュを無効にする(実際には役に立たない)、テキストボックスをネイティブモードに切り替える(テキストボックスがない)などのアドバイスを検索して見つけました。また、すべてのグリッドのビューステートを無効にして、2つを削除しました。コールバックパネルですが、ページサイズが大幅に縮小されることもありませんでした(約1〜2%)。

4

1 に答える 1

3

以下を使用して、ページサイズを4.5Mbから575Kbに減らすことができました。


  1. ページ全体とすべての内部ユーザー コントロールから ViewState を無効にしました。必要に応じて、個々のコントロールに対して有効にしました (実際には、最後にビューステートがまったくありませんでした)。
  2. コールバック パラメータとして明示的に渡すものを除いて、コールバック時のページに関する情報は必要ないため、可能な場合は一部のコントロールのコールバック状態を無効にしました。
  3. レイアウトを少し簡略化しました。(フィルタリング コントロールの別の 2 つのコールバック パネルを取り除きました - 内部に 2 つのコンボボックスがあるパネルでした。現在、1 つのパネル コールバックではなく、各コンボ ボックスで 2 つのコールバックを実行しています。コンボ ボックスのコールバックは、ページ レイアウトを html として返さないでください)。また、ラベルをスパンに、ボタンを入力などに変更しました。ネストされたタグをいくつか取り除きました。
  4. に使用RenderMode='Lightweight'されAspxNavBarます(実際には、ページサイズが〜20kbしか縮小されませんでした)
  5. コード ビハインド アーキテクチャの改善、JavaScript のリファクタリング、コールバックとイベント ポストバックの数の削減 (コールバックを使用して !filter が適用されるようになりました) など。

それだけです =) 誰かを助けることを願っています。

于 2012-09-22T12:30:06.477 に答える