我正在尝试从 .net Framework MVC 5 迁移到 .net core 2.0 MVC
过去的好时光我可以通过调用获取或设置缓存的对象
HttpContext.Current.Application.Lock();
HttpContext.Current.Application["foo"] = bar;
HttpContext.Current.Application.Lock();
但我无法将应用程序的这一部分迁移到 .net 核心。
我如何在核心 2.0 上处理这个问题?
最佳答案
HttpContext.Current.Application
是一项保留的功能,目的是使应用程序更容易从 ASP classic 移植过来。自 ASP.NET 1.0 以来,它已被 HttpContext.Current.Cache
取代,自 .NET 4.0 以来,被 System.Runtime.Caching
取代。
但是,AspNetCore 现在缺少所有这些缓存功能。有一个轻量级缓存选项,IMemoryCache
可以用于很多类似HttpContext.Current.Cache
的场景。为了获得更大的可扩展性,还有一个 IDistributedCache
.
关于c# - 在 httpcontext asp.net core 上缓存对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47461484/