Cách sử dụng MemoryCache trong view component netcore

Em dùng netcore 6. Em muốn lưu cache trong netcore sử dụng thư viện Microsoft.Extensions.Caching.Memory có sẵn.
Vấn đề e gặp phải là: Đoạn cache trên chỉ lưu đoạn 1 lần và gọi lại 1 lần, sau khi e f5 thì nó không get được giá trị cache đã lưu nên mỗi lần f5 thì lại ra 1 giá trị thời gian khác nhau (DateTime.Now).

Có phải do ở ngoài view component e khai báo:

IMemoryCache _memoryCache = new MemoryCache(new MemoryCacheOptions());

Nên mỗi lần f5 nó lại khởi tạo lại nên không get được cache đã lưu không ạ?
Anh chị xem hộ e e fix kiểu gì giờ ạ?

@using Microsoft.Extensions.Caching.Memory
@{
 
IMemoryCache _memoryCache = new MemoryCache(new MemoryCacheOptions());

            var cacheExpiryOptions = new MemoryCacheEntryOptions()
.SetAbsoluteExpiration(TimeSpan.FromSeconds(50));

 DateTime cacheEntry;

<b>@_memoryCache.TryGetValue("hanoi12345", out cacheEntry)</b>
if (!_memoryCache.TryGetValue("hanoi12345", out cacheEntry))
    {


        cacheEntry = DateTime.Now;
        // Set cache options.
    

        // Save data in cache.
        _memoryCache.Set("hanoi12345", cacheEntry, cacheExpiryOptions);
    }



var result = _memoryCache.Get("hanoi12345");
<br/>
@result 
<br/>

@cacheEntry
 


}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?