Skip Navigation Links
技术文档
·网站建设
·软件使用
·图形设计
·程序开发
·网络应用
·电脑技巧
 
公司介绍
·公司简介
·索仕SRCOS网络应用平台
·索仕网站管理系统
·影视广告制作
·联系我们
 
 

缓存使用:记录缓存何时被移除

12/14/2009 3:24:47 PM

有些时候我们需要知道缓存被更新的频率,为此探究一下缓存的相关事件(CacheItemRemoveCallback)。下面是一个使用示例:

页面代码
        const string Key = "anystringtest";
        
const string path = @"/csdata/siteuser.xml";
        
private void Bind() {
            System.Web.Caching.Cache ocache 
= HttpRuntime.Cache;

            SiteUser user 
= ocache.Get(Key) as SiteUser;
            
if (user == null)
            {
                user 
= new SiteUser();
                user 
= user.DeSerializeFromXML(typeof(SiteUser), Server.MapPath(path)) as SiteUser;

                CacheDependency depend 
= new CacheDependency(
                    Server.MapPath(path));
                TimeSpan ts 
= TimeSpan.Zero;
                ocache.Insert(Key, user, depend,
                        DateTime.Now.AddMinutes(
3), ts, CacheItemPriority.Default,
                        
/***** 使用匿名委托 *****/
                        (
string key, object obj, CacheItemRemovedReason reason) => {
                            
string content = string.Format("{0} -  缓存移除. key={1}\r\n",
                                DateTime.Now, key);
                            file.Write(Server.MapPath(
"/csdata/log.txt"), content);
                        }
                        );
                lbldata.Text 
= "from cache";

            }
            lbluser.Text 
= user.NickName;
        }


 

作者:感恩的心 来源:博客园
 
 
 
昆明索仕科技开发有限公司 版权所有 Copyright© 2002-2010 Kunming Source Technology Exploitive Co.,LTD. All Rights Reserved.
电话:0871-5627877 业务QQ:163871 联系我们
本站基于:索仕网站信息管理系统建设 版本 2.0.4325