1

我有所有用户通用的数据存储在HttpRuntime.Cache.

然后我在 Session 中存储了一些与用户相关的数据。

HttpRuntime.CacheCacheDependency机制,可以用来定义缓存中的项目之间的关系。

您将使用什么来处理 Session 和 Runtime Cache 之间的依赖关系?

除了 CacheDependencies,还有CacheItemRemovedCallback. 如果可能的话,我可以在此回调期间从每个会话中删除特定值。

4

1 回答 1

2

缓存依赖以另一种方式工作,即当缓存依赖于其他东西时,而不是当某些东西依赖于缓存时。

无法使用CacheItemRemovedCallback更新Session对象中的项目。回调不在特定用户的范围内调用,因此您无法访问该Session对象。您必须将数据保存在其他地方,以便您可以访问所有用户的数据,因为取决于从缓存中删除的项目的数据可能属于任何用户。

于 2011-08-04T07:35:47.340 回答