0

システムキャッシュオブジェクトHttpContext.Current.Cacheを使用して、カスタムサーバーコントロールをキャッシュに保存するにはどうすればよいですか?

現在、次のようなコードがあります。

            string adxkey = string.Format("adxdependency:document:{0}", this.SearchRootDocumentKey);
        System.Web.Caching.CacheDependency cd = new System.Web.Caching.CacheDependency(null, new string[] { adxkey });
        HttpContext.Current.Cache.Insert(adxkey, this, cd);   

これは、OnInitメソッド内にあります。私の質問は次のとおりです。

  • キャッシュコードを配置するためのより良い方法はありますか?
  • 上記のようにサーバーコントロールへの参照を渡すことで、サーバーコントロールをキャッシュできますか?または、レンダリングされたhtmlをキャッシュする必要がありますか?

サーバーコントロールをプログラムでキャッシュする方法の例をいただければ幸いです。ありがとう。

4

1 に答える 1

0

これに対する簡単な答えは、サーバーコントロールではなく、ページまたはユーザーコントロールにキャッシュ属性を追加する必要があるということです。私はこれを行う方法についてブログ投稿を書きました、あなたはそれをここで見つけることができます:

http://www.dirigodev.com/blog/post/AspNET-Caching-101-Part-2-Cache-Key-Dependencies.aspx

于 2011-03-28T15:27:36.777 に答える