sql SqlCacheDependency缓存依赖

来源:互联网 发布:云南广播电视网络信息 编辑:程序博客网 时间:2024/06/02 17:40

一. web.config中配置sqlCacheDependency缓存依赖
 <system.web>
      <caching>
        <sqlCacheDependency enabled="true" pollTime="6000">
          <databases>
            <add name="test_cache" connectionStringName="ConString"/><!--test_cache缓存依赖项参数 ConString 链接字符串-->
          </databases>
        </sqlCacheDependency>
      </caching>
</system.web>

二. 在Visual Studio 命令工具中开启数据缓存信息
aspnet_regsql -S <server> -U sa -P sa -d <database> -ed 启动数据库的数据缓存依赖功能
aspnet_regsql -S <server> -U sa -P sa -d <database> -t <table> -et 启动数据表的数据缓存依赖功能

aspnet_regsql -C "Data Source=.;Initial Catalog=Test;uid=sa;pwd=123456;" -ed -et -t "表名"
参数-C后面跟着的是数据库连接字符串,注意字母C是大写。参数-t后面跟着的就是你要开启数据库缓存的数据表,此处我为新闻类别的表开启了缓存依赖。(如果有多个表,则重复执行此命令,注意修改你的表名) 

三. 代码中缓存数据
System.Web.Caching.SqlCacheDependency dep = new System.Web.Caching.SqlCacheDependency("test_cache", "Student");
SetCache(key, 缓存对象, dep);
缓存方法:
    /// <summary>
    /// 设置已缓存依赖的方式缓存数据
    /// </summary>
    /// <param name="CacheKey">键值</param>
    /// <param name="objObject">缓存对象</param>
    /// <param name="dep">缓存依赖项</param>
    public static void SetCache(string CacheKey, object objObject, System.Web.Caching.CacheDependency dep)
    {
        System.Web.Caching.Cache objCache = HttpRuntime.Cache;
        objCache.Insert(
        CacheKey,
        objObject,
        dep,
        System.Web.Caching.Cache.NoAbsoluteExpiration,//从不过期
        System.Web.Caching.Cache.NoSlidingExpiration,//禁用可调过期
        System.Web.Caching.CacheItemPriority.Default,
        null
        );
    }

原创粉丝点击