应用程序状态(http://msdn.microsoft.com/en-us/library/ms178594.aspx)是否与使用System.Web.Caching应用程序接口相同?
即
System.web.httpcontent.current.cachesomekey?
发布于 2010-06-05 04:29:52
答案就在你自己的链接里。读一读。
但是,在应用程序状态下存储大量数据可能会填满服务器内存,导致服务器将内存分页到磁盘。作为使用应用程序状态的替代方案,您可以使用ASP.NET缓存机制来存储大量应用程序数据。ASP.NET缓存也将数据存储在内存中,因此速度非常快;但是,ASP.NET会主动管理缓存,并在内存不足时删除项目。
发布于 2010-06-05 04:27:57
不,它们是不一样的。
ASP.Net缓存对象专门针对缓存短暂的或可以持续一段时间的内容或对象进行了优化。如果需要释放资源,它将被垃圾收集器蚕食,并且永远不能保证您放入Cache中的东西在您下次查看时会在那里。
System.Application是一个键值的全局集合,可用于以线程安全的方式存储所有用户的全局信息(只要您安全地使用它)。但是,除非显式删除,否则不会从System.Application中删除任何内容。
发布于 2010-06-05 04:29:06
您可能指的是System.Web.Context,而不是content,而且Cache不同于HttpApplicationState。
应用程序状态用于在应用程序的生命周期内保持相当静态的项(除非显式删除)。在您链接的页面中可以看到,建议使用Application
用于存储少量的常用数据,这些数据不会因用户的不同而改变。
缓存本质上是暂时的,应该用于生命周期短得多的内容(几秒到几分钟),项目的删除是自动管理的(取决于配置)。
https://stackoverflow.com/questions/2977504
复制相似问题