Beispiel #1
0
        public virtual async Task <SolutionDto> UseAsync(SolutionDto input)
        {
            Check.NotNullOrWhiteSpace(input.DisplayName, nameof(input.DisplayName));
            Check.NotNullOrWhiteSpace(input.DirectoryPath, nameof(input.DirectoryPath));

            var list = await _manager.GetListAsync();

            var solution = FindSolution(list, input);

            if (solution == null)
            {
                list.AddFirst(input);
            }
            else
            {
                list.MoveItem((x) => x == solution, 0);
            }

            if (list.Count > RecentlySolutionsMaxCount)
            {
                list = list.GetRange(0, RecentlySolutionsMaxCount);
            }

            await _manager.UpdateListAsync(list);

            return(input);
        }
Beispiel #2
0
        protected virtual async Task UpdateRecentlySolutionListAsync(List <SolutionDto> list)
        {
            if (list.Count > RecentlySolutionsMaxCount)
            {
                list = list.GetRange(0, RecentlySolutionsMaxCount);
            }

            await _manager.UpdateListAsync(list);
        }