/// <summary> /// Хелпер для работы с кешем ELMA /// </summary> internal static class CacheHelper { private static ICacheService _cache; private static ICacheService Cache { get { return _cache ?? (_cache = Locator.GetServiceNotNull<ICacheService>()); } } /// <summary> /// Получить элемент из кеша /// </summary> /// <typeparam name="T">Тип данных</typeparam> /// <param name="key">Ключ</param> /// <returns>Элемент из кеша</returns> internal static T Get<T>(string key) { T val; Cache.TryGetValue(key, out val); return val; } /// <summary> /// Добавить элемент в кеш системы /// </summary> /// <typeparam name="T">Тип данных</typeparam> /// <param name="key">Ключ</param> /// <param name="value">Значение</param> internal static void Add<T>(string key, T value) { if (Cache.Contains(key)) { Cache.Remove(key); } Cache.Insert(key, value, new TimeSpan(14, 0, 0, 0)); } /// <summary> /// Удалитиь элемент из кеша /// </summary> /// <param name="key">Ключ</param> internal static void Remove(string key) { Cache.Remove(key); } }