Я использую кеш памяти в ядре Asp.net и использую свой бизнес.Мне нужен список ролей и соответствующие данные роли в памяти.
Я использую следующий метод для ролей кэша в памяти:
public void Add(Role role)
{
lock (_lockObject)
{
var dictionary = _cache.Get<Dictionary<string, List<RoleViewModel>>>(CacheKeys.RoleCache);
if (dictionary.ContainsKey(role.Id))
{
dictionary[role.tId].Add(new RoleCacheViewModel(role));
}
else
{
dictionary.Add(
role.Id,
new List<RoleCacheViewModel> { new RoleCacheViewModel(role) });
}
_cache.Set(CacheKeys.RoleCache, dictionary);
}
}
Итак, у меня многозапросы и мне нужно это кешировать в памяти.для одновременного запроса я использую объект блокировки, как показано ниже.
Это правильный путь, или я могу использовать лучший способ?