HttpRuntime.Cache 在哪里存储数据

本文关键字:数据 存储 在哪里 Cache HttpRuntime | 更新日期: 2023-09-27 18:36:20

我正在尝试实现具有缓存功能的Web应用程序。我需要缓存的原因是我们有一个允许用户访问在线课程的应用程序。现在,一旦用户登录,我就会根据我们的数据库验证他。验证后,我想将用户 ID 和课程 ID 存储在缓存中 20 分钟,以便如果他再次请求它,我可以从缓存敌人的用户 ID 和课程 ID 中检索值,如果有效,则为他提供访问权限由于某些原因,我无法在此应用程序中使用会话变量,因此它们不是一个选项。

现在,我的应用程序中的缓存代码位于 HTTP 处理程序(.ashx 文件)中。现在我尝试像调用 aspx 页面一样调用缓存对象,但我不能,可能是因为它是一个处理程序而不是网页。所以

Cache.Insert("Id", 123); 

在处理程序中不起作用。因此,我尝试了HTTPRuntime.cache。但是在做了一些研究之后,我发现HTTPRuntime.cache对于整个应用程序是通用的。我不完全理解"整个应用程序"。这是否意味着它由访问我们应用程序的不同计算机上的所有用户共享?或者这是否意味着它由一台访问我们应用程序的计算机上的所有用户共享。因为如果是后者,我可以接受。那么HTTPRuntime.cache是在一个浏览器(或一台计算机)缓存数据的好方法,还是有不同更好的方法来实现浏览器缓存来存储数据?

HttpRuntime.Cache 在哪里存储数据

缓存存储在 Web 服务器内存中。

您应该了解视图状态、缓存和会话之间的区别