public void InsertHeavilyRequestedObjectIntoCache(HeavilyRequestedObjectDTO realObject)
 {
     _distributedCache.Set(getKey(realObject.Id), ToByteArray(realObject), new DistributedCacheEntryOptions
     {
         AbsoluteExpirationRelativeToNow = new TimeSpan(0, 0, 15)
     });
 }
        public HeavilyRequestedObjectDTO GetHeavilyRequestedObjectById(int id)
        {
            HeavilyRequestedObjectDTO cachedObject = _heavilyRequestedRedisRepository.GetHeavilyRequestedObjectById(id);

            if (cachedObject != null)
            {
                return(cachedObject);
            }

            HeavilyRequestedObjectDTO realObject = _heavilyRequestedRepository.GetHeavilyRequestedObjectById(id);

            _heavilyRequestedRedisRepository.InsertHeavilyRequestedObjectIntoCache(realObject);

            return(realObject);
        }