62,041
社区成员
发帖
与我相关
我的任务
分享
var content = (CsdnPage)cache[key]
这样的代码就可以独取出来。
比如说缓存单元的Duration属性设置为10分钟,那么你的缓存中最多只是把帖子缓存10分钟。
比如说你的每个论坛的列表页面的缓存单元的缓存依赖项设置为依赖于 Cache["xxxx论坛的列表页面"] 这样一个缓存单元,那么每当一个论坛有新的帖子顶到上面时就为这个 Cache["xxxx论坛的列表页面"] 设置一个新的值例如 DateTime.Now.Ticks,那么所有依赖于这个缓存单元的所有其它缓存单元就自动清除了(不是脏的缓存了)。
比如说一个帖子可能在 Cache["帖子390421987号"]中可以读取到,同时也在 Cache[".net首页列表"] 这个缓存单元中也可以读取到,也就是一个数据在不同的缓存单元所引用的数据(数据列表)中都会有。它们就是不同查询“小单元”的结果,临时缓存起来供下一次相同的查询表达式来复用。根本不是说“把所有帖子的数据库表放在内存里来代替向数据库的查询”这个概念。http://bbs.csdn.net/topics/390425743