Exemplo n.º 1
0
        public async Task <List <string> > SearchNamesAsync(string name, DateTime?asOf)
        {
            var dependencyNamesCacheKey = name.ToLower();

            var dependencyNames = await distributedCache.GetAsync <List <string> >(dependencyNamesCacheKey).ConfigureAwait(false);

            if (dependencyNames == null)
            {
                dependencyNames = await dependencyRepository.SearchNamesAsync(name, asOf).ConfigureAwait(false);

                var cacheOptions = new DistributedCacheEntryOptions
                {
                    SlidingExpiration = TimeSpan.FromSeconds(cachingSettings.Durations.DependencyNameSearchResults)
                };

                await distributedCache.SetAsync(dependencyNamesCacheKey, dependencyNames, cacheOptions).ConfigureAwait(false);
            }

            return(dependencyNames);
        }
 public async Task<List<string>> SearchNamesAsync(string name, DateTime? asOf)
 {
     return await dependencyRepository.SearchNamesAsync(name, asOf).ConfigureAwait(false);
 }