使用SqlCacheDependency依赖项让数据库变化后缓
系统
1648 0
SqlCacheDependency可以使缓存在数据库或者数据库某张表或者字段变化后让指定缓存失效。对于一些需要及时显示的信息比较有用。
需要.net2.0以后设sql server2005及以后版本支持。
首先配置web.config
<system.web>
<caching>
<sqlCacheDependency enabled="true" pollTime="5000">
<databases>
<add connectionStringName="DefaultConnection" name="SiteInfoSqlDependency"/>
</databases>
</sqlCacheDependency>
</caching>
</system.web>
第二步 插入缓存:
//启用更改通知
SqlCacheDependencyAdmin.EnableNotifications(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
//连接到 SQL Server 数据库并为 SqlCacheDependency 更改通知准备数据库表
SqlCacheDependencyAdmin.EnableTableForNotifications(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString, "QJInfo_SiteInfo");
//制定缓存策略
SqlCacheDependency scd = new SqlCacheDependency("SiteInfoSqlDependency", "QJInfo_SiteInfo");
//插入缓存
cache.Insert("SiteInfo", siteInfo, scd, DateTime.Now.AddHours(5), Cache.NoSlidingExpiration);
之后数据库表有插入、更新或删除操作时,该缓存就会自动失效,数据库里边多了个表AspNet_SqlCacheTablesForChangeNotification来记录相关表变化信息。
使用SqlCacheDependency依赖项让数据库变化后缓存失效
更多文章、技术交流、商务合作、联系博主
微信扫码或搜索:z360901061
微信扫一扫加我为好友
QQ号联系: 360901061
您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。
【本文对您有帮助就好】元