SQL 缓存依赖实例

创建单张表的依赖缓存依赖:

        public static object GetCache(string KeyName)
        {
            string CacheKey = KeyName;
            Cache objCache = HttpRuntime.Cache;
            object objModel = objCache[CacheKey];
            if (objModel == null)
            {
                SqlConnection conn = new SqlConnection(“数据库连接字符串”);
                SqlDataAdapter da = new SqlDataAdapter("查询语句", conn);
                DataTable dt = new DataTable();
                // 创建一个SQL缓存依赖
                SqlCacheDependency denpendency = new SqlCacheDependency("数据库名称", "表名");
                da.Fill(dt);
                objCache.Insert(CacheKey,dt,denpendency,System.Web.Caching.Cache.NoAbsoluteExpiration,TimeSpan.Zero);
                objModel = objCache[CacheKey];
            }
            else
            {
                return objModel;
            }
            return objModel;
        }

创建多张表的缓存依赖

public static object GetCache(string KeyName)
        {
            string CacheKey = KeyName;
            Cache objCache = HttpRuntime.Cache;
            object objModel = objCache[CacheKey];
            if (objModel == null)
            {
                SqlConnection conn = new SqlConnection(数据库连接字符串);
                SqlDataAdapter da = new SqlDataAdapter("查询语句", conn);
                DataTable dt = new DataTable();
                // 创建一个SQL缓存依赖         
                AggregateCacheDependency dep = new AggregateCacheDependency();
                dep.Add(new SqlCacheDependency("数据库名称", "表名"));
                dep.Add(new SqlCacheDependency("数据库名称", "表名"));
                da.Fill(dt);
                objCache.Insert(CacheKey, dt, dep, System.Web.Caching.Cache.NoAbsoluteExpiration, TimeSpan.Zero);
                objModel = objCache[CacheKey];
            }
            else
            {
                return objModel;
            }
            return objModel;
        }

 

posted @ 2013-05-13 10:11  L嗜血幽灵  阅读(199)  评论(0编辑  收藏  举报