SqlCacheDependency
特性实际上是通过
System.Web.Caching.SqlCacheDependency
类来体现的。
通过该类,可以在所有支持的
SQL Server
版本上监视特定的
SQL Server
数据库表,并创建依赖于该表以及表中数据行的缓存项。当数据表或表中特定行的数据发生更改时,具有依赖项的数据项就会失效,并自动从
Cache
中删除该项,从而保证了缓存中不再保留过期的数据。
其中,
AspNet_SqlCacheUpdateChangeIdStoredProcedure
即是工具添加的一组存储过程中的一个。当对
Product
数据表执行
Insert
、
Update
或
Delete
等操作时,就会激活触发器,然后执行
AspNet_SqlCacheUpdateChangeIdStoredProcedure
存储过程。其执行的过程就是修改
AspNet_SqlCacheTablesForChangeNotification
数据表的
changeId
字段值: