public ScenarioListViewModel GetAll() { var allScenarios = _scenarioRepository.Query() .Where(x => !x.IsDeleted) .ToList(); var allFolders = _folderRepository.Query() .Where(x => !x.IsDeleted) .ToList(); FolderViewModel AssembleFolder(Folder folder) { var folderScenarios = allScenarios .Where(x => x.FolderId.GetValueOrDefault() == folder.Id) .Select(ScenarioMapper.ToScenarioViewModel) .ToList(); var nestedFolders = allFolders .Where(x => x.ParentFolderId.GetValueOrDefault() == folder.Id) .Select(AssembleFolder) .ToList(); return(new FolderViewModel() { Id = folder.Id, ParentId = folder.ParentFolderId, Name = folder.Name, Folders = nestedFolders, Scenarios = folderScenarios }); } var folders = allFolders .Where(x => !x.ParentFolderId.HasValue) .Select(AssembleFolder) .ToList(); var rootScenarios = allScenarios .Where(x => !x.FolderId.HasValue) .Select(ScenarioMapper.ToScenarioViewModel) .ToList(); var trashScenarios = _scenarioRepository.Query() .Where(x => x.IsDeleted) .AsEnumerable() .Select(ScenarioMapper.ToScenarioViewModel) .ToList(); var scenarioList = new ScenarioListViewModel { Folders = folders, RootScenarios = rootScenarios, TrashScenarios = trashScenarios }; _scenarioExecutorService.FillExecutionResults(scenarioList); return(scenarioList); }
public List <int> RunAll() { var scenarioIds = _scenarioRepository.Query() .Where(x => !x.IsDeleted) .Select(x => x.Id) .ToList(); Task.Run(() => scenarioIds.ForEach(Execute)); return(scenarioIds); }