在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
博客园中系列文章:温故知新ASP.NET 2.0(C#)(4) - 缓存&SqlCacheDependency中有一段关于数据源控件的Sql缓存的讲解,如下: 我测试了一下,总结了两点: 1、只要数据源控件采用如下配置: SelectMethod="GetCacheTests" TypeName="SqlCache.BLL.CacheTest" EnableCaching="true" CacheDuration="10" SqlCacheDependency="CommandNotification"> </asp:ObjectDataSource>
无论是sql2000或2005、2008,都不需要额外做任何事情,配置文件也不需要写任何东西。 2、如果数据源控件采用如下配置: SelectMethod="GetCacheTests" TypeName="SqlCache.BLL.CacheTest" EnableCaching="true" CacheDuration="10" SqlCacheDependency="CacheTest:CacheTest"> </asp:ObjectDataSource> 或 <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetCacheTests" TypeName="SqlCache.BLL.CacheTest" EnableCaching="true" CacheDuration="Infinite" SqlCacheDependency="CacheTest:CacheTest"> </asp:ObjectDataSource>
无论是sql2000或2005、2008,配置文件中都要这样写: <sqlCacheDependency enabled="true" pollTime="10000"> <databases> <add name="CacheTest" connectionStringName="MsSqlConnString" /> </databases> </sqlCacheDependency> //如果是SqlServer2005的话,则只需如下设置,因为SqlServer支持基于通知的缓存失效 //<sqlCacheDependency enabled="true" /> //第7行的话是错误的。 </caching>
而且还要使用aspnet_regsql.exe工具,通知数据库。 我的测试代码:SqlCache.rar |
请发表评论