Beispiel #1
0
        public async Task <IEnumerable <IHackerNewsArticle> > GetAllTopStoriesAsync()
        {
            var cacheKey = "HackerNewsServiceCaching.GetAllTopStoriesAsync";

            if (_memoryCache.TryGetValue <IEnumerable <IHackerNewsArticle> >(cacheKey, out var storyTask))
            {
                return(storyTask);
            }
            else
            {
                var topStories = await _innerHackerNewsService.GetAllTopStoriesAsync();

                _memoryCache.Set(cacheKey, topStories, TimeSpan.FromMinutes(10));
                return(topStories);
            }
        }