public async Task <(IEnumerable <TaskAggregate> list, bool fromCache)> FilterTasksAsync(FilterTaskArgs args)
        {
            string cacheKey        = CacheSettings.GetFilterArgsCachekey(args);
            var    cachedTasksList = await _cache.TryGetCachedValueAsync <IEnumerable <TaskAggregate> >(cacheKey);

            if (cachedTasksList != null)
            {
                return(cachedTasksList, true);
            }

            var filteredTasksList = await _tasksRepository.FilterTasksAsync(args);

            await _cache.SetCacheValueAsync(cacheKey, filteredTasksList, CacheSettings.TasksFilterCacheLifetime);

            return(filteredTasksList, false);
        }
 public Task <IEnumerable <TaskAggregate> > FilterTasksAsync(FilterTaskArgs args)
 {
     return(_tasksRepository.FilterTasksAsync(args));
 }