在旧版ASP.NET应用程序上工作时,我们发现ASP.NET会话用于缓存某些对象,但是对于某些对象,使用Microsoft.Practices.EnterpriseLibrary.Caching
。
是否有理由在标准ASP.NET会话上使用Microsoft.Practices.EnterpriseLibrary.Caching
?
编辑
在我的方案中,通过将ASP.NET会话ID附加到缓存项的键中,实际上使用了企业库缓存来缓存每个用户的数据。
最佳答案
会话和缓存是不同的概念。
如果要在站点的所有用户之间共享对象,则应在会话用于存储用户特定数据时使用缓存。
因此,您的问题不应是:
有什么理由要使用
Microsoft.Practices.EnterpriseLibrary。缓存
通过标准ASP.NET会话?
但:
有什么理由要使用
Microsoft.Practices.EnterpriseLibrary。缓存
通过标准的ASP.NET缓存?
这个问题的答案一如既往:这取决于您的情况。 This article概述了可以在哪里使用缓存应用程序块以及它试图解决什么问题。