예제 #1
0
        /// <summary>
        /// Gets the items.
        /// </summary>
        /// <param name="folder">The folder.</param>
        /// <returns></returns>
        public IEnumerable <SolutionInfo> GetItems(DirectoryInfo folder)
        {
            var solutions = new List <SolutionInfo>();

            var files = new List <FileInfo>();

            GetAllFiles(folder, ref files, _configuration.SolutionExtension);

            foreach (var file in files)
            {
                var solution = WorkspaceHelper.GetSolution(file.FullName);

                solutions.Add(new SolutionInfo(file, solution.Result.Id.Id.ToString(), solution.Result.Projects
                                               .Filter(_configuration.ProjectsRegexFilter)
                                               .Select(GetProject)));
            }

            return(solutions);
        }