.Net 4内存缓存类和用户会话

Jas*_*son 4 asp.net-mvc c#-4.0 memorycache

.Net 4.0中的新类MemoryCache似乎就像asp.net缓存一样.我的问题是:

MemoryCache是​​否等同于在Session Cache中为用户存储对象/值,而不是在aspx页面后面的代码中.

存储在服务器上的MemoryCache中的值是否可以访问网页事件?

Dar*_*rov 11

MemoryCache是​​否等同于在会话缓存中为用户存储对象/值

不,它不相同.ASP.NET Session对象是按用户键/值存储,而MemoryCache是​​应用程序级键/值存储(值在所有用户之间共享).

存储在服务器上的MemoryCache中的值是否可以访问网页事件?

在ASP.NET MVC中,通常没有网页事件,但您可以在应用程序中的任何位置访问存储在MemoryCache中的值.

基本上,在ASP.NET应用程序中,新MemoryCache对象只是旧HttpContext.Cache对象的包装器(它将值存储在旧的Cache对象中).

  • @Jason,在一个设计合理的ASP.NET MVC应用程序中,视图不应该访问控制器传递给它的视图模型以外的任何内容.因此,您的控制器操作将查询缓存,构建视图模型并将此视图模型传递给视图.然后视图将只显示相应的属性. (2认同)