ASP.Net Cache是​​否在不同的用户会话之间共享?

时间:2009-03-04 15:00:20

标签: asp.net caching

如果我执行以下操作,请在页面中填写:

  

Cache [“key”] = myObject;

该缓存对象是否可用于其他用户的请求?

3 个答案:

答案 0 :(得分:15)

是。缓存是应用程序级别,所有用户都在同一个应用程序中。

如果您需要每用户缓存,您可以使用会话,但这并不完全相同。缓存允许框架以与会话不同的方式自动使项目过期。如果您希望基于每个用户的缓存行为(不一定是个好主意),您可以将用户的ID构建为主缓存的密钥的一部分。

答案 1 :(得分:10)

是的,它适用于同一台服务器上的所有用户。但是,如果您正在运行服务器场,则只有使用将数据添加到缓存中的服务器的用户才能使用它。

答案 2 :(得分:2)

缓存适用于每个AppDomain。像Web应用程序这样的单个应用程序通常保留在单个AppDomain中。但是,无法在Web应用程序和Web服务之间共享缓存。