как использовать класс MemoryCache для кэширования и получения списка в asp.net сердечник

#c# #caching #.net-core #memorycache

Вопрос:

Я могу получить кэшированный объект, создав экземпляр класса ‘IMeomoryCache’ , как это:

 _memoryCache.Get<Users>(id);
 

1.но как я могу получить список пользователей, использующих этот класс?

2.второй вопрос заключается в том, как настроить кэшированный список, если он не был кэширован?

Комментарии:

1. Вы можете найти, как это сделать здесь: docs.microsoft.com/en-gb/aspnet/core/performance/caching/…

Ответ №1:

Вы можете использовать метод TryGetValue, который возвращает кэшированный объект в качестве выходного параметра. Обратитесь к приведенному ниже примеру:-

 List<User> users;
string key = "usersCacheKey";
//TryGetValue will get the item from cache and assign it to users variable.
//It will return false if item is not found.
if(!_memoryCache.TryGetValue<List<User>>(key, out users){
  //item not found in cache. set the cache item here
  users = new List<User>();
  _memoryCache.Set<List<User>>(key, users);
}
 

Ссылка ниже ссылка(ы) для получения дополнительной информации о том, как использовать кэширование памяти в ASP.NET Ядро 5.0:-
Кэш в памяти в ASP.NET Сердечник