Exemple #1
0
        /// <summary>
        /// Internally try get valid entity from cache. It has no locker inside.
        /// </summary>
        /// <param name="key">The key.</param>
        /// <param name="entity">The entity.</param>
        /// <returns></returns>
        protected override bool InternalTryGetValidEntityFromCache(TKey key, out TEntity entity)
        {
            MemoryCacheItem <TEntity> cachedObject;

            if ((container.TryGetValue(key, out cachedObject) && !cachedObject.IsExpired))
            {
                entity = cachedObject.Value;
                return(true);
            }
            else
            {
                entity = default(TEntity);
                return(false);
            }
        }