缓存-memoryCache和redis分布式缓存


1.本地memoryCache

安装nuget包

缓存-memoryCache和redis分布式缓存

 

2.依赖注入MemoryCache

---在startup类中注册
public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews();
            services.AddMemoryCache(options => {
                options.Clock = new LocalClock();
            });
        }

        private class LocalClock : ISystemClock {
            public DateTimeOffset UtcNow => DateTime.Now;
        }

在controller类中使用
    public class MemoryCacheController : Controller
    {
        private readonly ILogger<MemoryCacheController> _logger;
        private IConfiguration _iConfiguration;
        private IMemoryCache _iMemoryCache;
        public MemoryCacheController(ILogger<MemoryCacheController> logger, IConfiguration configuration,
            IMemoryCache memoryCache) {
            this._logger = logger;
            this._iConfiguration = configuration;
            this._iMemoryCache = memoryCache;
        }

        public IActionResult Index()
        {
            string key = $"MemoryCacheController";
            #region MemoryCache 
            if (this._iMemoryCache.TryGetValue<string>(key, out string time)) {

            } else {
                time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff");
                this._iMemoryCache.Set(key, time, TimeSpan.FromSeconds(120));
            }
            base.ViewBag.MemoryCacheNow = time;


            #endregion

            return View();
        }
    }

 

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/244468.html

(0)
上一篇 2022年4月17日
下一篇 2022年4月17日

相关推荐

发表回复

登录后才能评论