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 回答