我写了一篇文章《asp.net缓存》http://www.cnblogs.com/bighuiwolf/archive/2010/08/03/1791446.html,但有2个疑问:
1. 有次面试时碰到的问题:当用Cache["x"]=obj;时,它的过期时间是多长?是永久不过期?还是内存不够时会被删除?还是有个默认的过期时间,比如15分钟?
2. 当用Notification时,需要使用new SqlCacheDependency(SqlCommand)来创建依赖项,这样做显然是用一种原始的方法取数据,即用有很多限制的Select语句来取数据,有没有办法用存储过程呢?
大侠们都来帮帮我!
问题1:默认是永不过期的。至于内存不够,IIS引起的内存回收另说了。
问题2:Notification没用过,sql数据库本身就有缓存,不了解你想干什么。
觉得做数据库依赖不是太靠谱,XML还可以。
缓存方面可以参考Discuz!NT的缓存机制,开源的,最新版重构的不错。