私たちは、OutputCacheディレクティブ、VaryByCustom属性、およびGlobal.asaxで追加されたGetVaryByCustomString()メソッドを使用してHTML出力キャッシュを使用するASP.NET WebフォームSitecoreサイトを用意しています。現在評価されているコントロールをGlobal.asax.GetVaryByCustomString()から取得できますか?
GetVaryByCustomString()メソッドから現在のコントロールへのハンドルを取得することはできますか?このメソッドを使用した出力キャッシングと、同じページに追加されたコントロールの複数のインスタンスでは、問題が発生しています。コントロールにハンドルがある場合は、Sitecoreのパラメータ(この場合は重要)に基づいて出力を別々にキャッシュし、残りのキャッシング戦略とうまく合わせることができます。
Sitecoreキャッシングはポストバックに問題があることが知られていますが、残念なことにこのコードベースで広く使用されています。また、不必要な詳細に陥ることなく、他のシナリオでは適切に動作しません。それを使用する方法がわからないわけではありませんが、いくつかの欠点があります。私は来年MVCでサイト全体をやり直すことができますが、物事はかなり異なったものになります。 – Iucounu