示例#1
0
        private async Task<List<string>> GetAllSiteFoldersFolders()
        {
            var listCacheKey = "folderList";
            var result = cache.Get(listCacheKey) as List<string>;
            if (result != null)
            {
                log.LogDebug("Folder List retrieved from cache with key \"{cacheKey}\".", listCacheKey);
                return result;
            }

            result = await siteRepo.GetAllSiteFolders();
            var cacheEntryOptions = new MemoryCacheEntryOptions()
                .SetAbsoluteExpiration(cachingOptions.FolderListCacheDuration);

            log.LogDebug("Caching folder list with keys \"{cacheKey}\".", listCacheKey);
            cache.Set(listCacheKey, result, cacheEntryOptions);

            return result;

        }