我是asp.net的初学者,并且有一些关于Cache的问题:
答案 0 :(得分:84)
你认为错了。 HttpRuntime.Cache不仅仅是一个简单的字典。它提供线程安全和缓存过期策略。它提供了使用自定义实现的可能性,并从分布式缓存中受益,这在Web场中很有用。用字典实现这个可能是很多你可能不想冒险的工作,因为你基本上会重新发明轮子,即使重新发明轮子也不会打扰你做正确的机会很渺茫。HttpRuntime.Cache只提供了几种方法,我想我能够 用自己的词典来实现这些方法。
2)如果HttpRuntime.Cache比Dictionary好多了,为什么有些人呢 想要实现自己的缓存框架。
人们不想这样做。
3)MS Enterprise Cache Block怎么样?
当您需要简单的缓存时,这种重型火炮并不总是必要的,这可以通过框架已经为您提供的开箱即用来实现。
备注:在.NET 4.0中,您应该使用新的System.Runtime.Caching命名空间而不是HttpRuntime.Cache
。
所以回答你的问题:Should I use HttpRuntime.Cache
是的,除非您使用的是.NET 4.0,否则您应该使用新System.Runtime.Caching
命名空间中的类。