パフォーマンスを最適化するために、ASP.NET アプリケーションでメニューをキャッシュする最良の方法は何ですか? メニューは、ユーザーの役割と、ページ上の特定のコントロール/セクションの選択などのその他の基準に基づいて構築されており、メニューのデータはデータベースから取得されることに注意してください。現在、各ページのポストバックごとにメニューを構築中です。どうすればこれを回避できますか? メニューを含むユーザー コントロールのビュー ステートを有効にする必要がありますか?
ページの出力をキャッシュするには@OutputCache
、ページの上部にディレクティブを指定する必要があります。
VaryByParam
クエリ文字列パラメーターに基づいてキャッシュを変更するために使用できる属性があります。
キャッシュに関するこのブログを参照することは価値があります。