我正在向ASP.NET Web应用程序添加缓存.这是.NET4,所以我可以使用System.Runtime.Caching名称空间中的类(据我所知,添加该名称空间是为了提供与System.Web.Caching中的功能类似的功能,但用于非Web应用程序).
但既然这是一个网络应用,我最好还是使用这个系统.网状物缓存?或者是更新的系统.运行时.在某种程度上,你更优秀吗?
我正在向ASP.NET Web应用程序添加缓存.这是.NET4,所以我可以使用System.Runtime.Caching名称空间中的类(据我所知,添加该名称空间是为了提供与System.Web.Caching中的功能类似的功能,但用于非Web应用程序).
但既然这是一个网络应用,我最好还是使用这个系统.网状物缓存?或者是更新的系统.运行时.在某种程度上,你更优秀吗?
Microsoft建议将System.Runtime.Caging用于所有缓存目的.看看这个:http://msdn.microsoft.com/en-us/library/dd997357.aspx
尽管如此,我还是遇到了一些线程,在这些线程中,人们在使用MemoryCache.Default实例时遇到了问题.过了一段时间,它就不能正常工作了.使用Add或Set方法添加的任何项实际上都不会添加到缓存中.我try 了相同的方法,并通过显式调用MemoryCache.Default.Dispose()方法重现了此问题.
以下是链接: MemoryCache Empty : Returns null after being set个
http://forums.asp.net/t/1736572.aspx/1
我的建议是使用这个系统.网状物缓存(HttpContext.Current.Cache)
UPDATE:
此问题已由女士解决.请在下面的帖子中查看已接受的答案: