Sử dụng StackExchange.Redis trên ứng dụng .net core mới nhất .net 6

Thư viện nutget:  Search tên Thư viện sau

      Microsoft.Extensions.Caching.StackExchangeRedis

Tạo mới project .net 6 bằng visual studio: 

Bước 1: Chọn ASP.NET core Web API

Bước 2: Đặt tên project

Bước 4: 

Tạo một controller api test

Bước 5: 

Add thư viện:  từ Nutget

Microsoft.Extensions.Caching.StackExchangeRedis

 

Khai báo sử dụng thư viện Redis cached trong file Program.cs của Project

builder.Services.AddStackExchangeRedisCache(options =>

{

    options.Configuration =     "localhost,abortConnect=false,connectTimeout=30000,responseTimeout=30000"; 

 

});

 

Code controller: 

 

 [Route("api/[controller]")]

    [ApiController]

    public class RedisController : ControllerBase

    {

        private readonly IDistributedCache _distributedCache;

        public RedisController(IDistributedCache distributedCache)

        {

            _distributedCache = distributedCache;

        }

 

        [HttpGet]

        public string Get()

        {

            var cacheKey = "TheTime";

            var currentTime = DateTime.Now.ToString();

            var cachedTime = _distributedCache.GetString(cacheKey);

            if (string.IsNullOrEmpty(cachedTime))

            {

                // cachedTime = "Expired";

                // Cache expire trong 5s

                var options = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromSeconds(5));

                // Nạp lại giá trị mới cho cache

                _distributedCache.SetString(cacheKey, currentTime, options);

                cachedTime = _distributedCache.GetString(cacheKey);

            }

            var result = $"Current Time : {currentTime} \nCached  Time : {cachedTime}";

            return result;

        }

 

    }

 

 Và đây là kq: 

 

Bạn có thể run ngay trên link run app: 
http://localhost:5289/swagger/index.html

Link source code: bạn có thể tải tại đây: https://github.com/lequocviet4990/ExRedis

Chúc các bạn thành công