如何在ASP.NET MVC中缓存10个常用记录?

时间:2012-03-04 03:31:55

标签: c# asp.net asp.net-mvc caching

我知道ASP.NET MVC中有一个静态变量并不能保证变量只创建一次。

在应用程序的生命周期内,存储少数常用对象(请求之间全局共享)的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

我会使用常规的ASP.NET数据缓存。

应用程序状态仅在数据很少更改时才有用,但通过问题的声音,它会经常更改。它也是自由线程的,并且不会扩展(例如在Web场方案中)。

使用缓存,您可以控制项目的到期时间,在删除项目时指定回调,使用滑动到期,通过接口访问它,这意味着它可以轻松测试(而应用程序状态将不得不被模拟),以及如果你正确设置它可以轻松扩展。

围绕应用程序状态的简单get / set包装器更加健壮。

答案 1 :(得分:1)

Application State是最合适的,因为它在应用程序的所有会话之间共享。