0

データベースから取得したデータを表示するために、ASP.NET 4.0 にリピーターを実装するのに忙しかったのですが、ページングの構築から始めなかったので、開始時に割り当てられたデータが転送されました。データテーブルを埋めて、リピーターのデータソースとしてバインドしました。

ページが 4000 レコードの読み込みでビジー状態である間に (多くの場合) 26 MB が転送されたことに気付きました。これは割り当てられているので、興味があり、実装者が for each ループを使用して同じ data/html を表示するようになりました (これは、ロード時間に関しては適切なソリューションではありません)。今回はページ読み込み時に10.5MB転送されました。

リピーターを使用すると 26 MB (viewstate を無効にすると 24 MB) が転送され、ループを使用して HTML を作成すると 10 MB になるのはなぜですか? とにかくリピーターを最適化する方法はありますか? 私は基本的なものだけを実装しました(アイテムテンプレートの作成、データベースからのデータテーブルへの入力、リピーターへのバインド)

4

2 に答える 2

0

リピーターは、あなたが伝えたコードだけを出力します。したがって、@Aristos がコメントで述べたことを実行し、返されたマークアップを比較します。どちらの場合も最初のレコードのマークアップを投稿していただければ、質問への回答に役立ちます。

あなたが見るかもしれないもう1つのことは、私が数回遭遇したことです。特に Firefox では、以下のような空の JavaScript リンクがある場合、ページのマークアップが何も取得されないのではなく、全体が取得されます。これは単なる Firebug アドオンのバグかもしれませんが、ダウンロード サイズが 2 倍になった理由かもしれません。コードを表示せずにリピーターを使用すると、なぜこれが発生するのかはわかりませんが。心に留めておく価値があります。

<script type="text/javascript" src="" ></script>
于 2010-09-03T08:08:49.630 に答える