|
|
 |
|
 |
ASP.NET2.0中的SqlCacheDependency特性 |
热 ★★★ |
|
|
|
| ASP.NET2.0中的SqlCacheDependency特性 |
|
|
| 作者:佚名 文章来源:本站整理 更新时间:2008-5-25 19:00:11 |
|
|
|
ASP.NET中的Page Cache是个很有用的东东,只要简单的在页面上方加上一个OutputCache标签,就可以让页面在制定的Duration内直接把自动保存在缓存中的页面内容输出,而不需要让ASP.NET引擎再次执行页面代码,当然,节省这点执行时间并不是最主要的理由,主要理由是如果页面内容是从数据库中取出,那么就可以省去连接数据库、取数据的步骤,这个好处可大了。 PageCache有点小小的问题,比如,很多ASP.NET论坛的首页就用了PageCache,所以在一个版里面贴出的最新的帖子并不会马上反映到首页上,而是需要等上一段时间。虽然有点无可奈何,但在某些场合(比如易趣用来显示物品拍卖状态的页面),这种延迟是不允许的。 也即是说,ASP.NET里面的Cache并不能自动根据数据库中相应数据发生了变化,而使相应的Cache过期,ASP.NET 2.0中新增的SqlCacheDependency特性使这成为了可能。(当然,只要我们明白了ASP.NET 2.0中的大致实现方式,我们可以基于ASP.NET 1.0把这个特点实现出来,后面我总结了相应的方法。) 要在ASP.NET 2.0中应用SqlCacheDependency特性,步骤如下(基于大家手里的Whidbey PDC版本): 1、 使数据库支持SqlCacheDependency 在.Net Framework 1.2的安装目录下(通常是WINDOWS\Microsoft.NET\Framework\v1.2.30703),有一个aspnet_regsqlcache.exe,这个命令行工具让我们的SqlServer 7.0或者SqlServer 2000能支持SqlCacheDependency特性, 首先:“aspnet_regsqlcache –S 服务器名称 –U 登陆ID –P 密码 –d 数据库名称 –ed”,这个命令使指定数据库支持SqlCacheDependency, 然后我们再加入要追踪的数据表:“aspnet_regsqlcache –S 服务器名称 –U 登陆ID –P 密码 –d 数据库名称 –t 要追踪的数据表的名称 –et”,这个命令使指定的Table支持SqlCacheDependency。 它在幕后做了什么事情呢? 首先,它在指定的数据库中新建了一个Table,叫做“AspNet_SqlCacheTablesForChangeNotification”,这个表有三个字段,“tableName”记录要追踪的数据表的名称,“notificationCreated”记录开始追踪的时间,“changeId”是一个int类型的字段,每当追踪的数据表的数据发生变化时,这个字段的值就加1。 它还会在指定的数据库中增加几个存储过程,用来让A[1] [2] [3] [4] 下一页
|
|
|
|
| 文章录入:admin 责任编辑:admin |
|
|
上一篇文章: VS.NET安装部署深入研究 下一篇文章: Asp.Net控件加载错误的解决方法 |
|
|
|
|
|
|
|
|
|
|
|
|