public async Task <List <SolutionProjectInfo> > GetSolutionInfoAsync(string solutionPath) { using (var workspace = MSBuildWorkspace.Create()) { var solution = await _solutionOpener.GetSolutionAsync(solutionPath, "debug", false); return(solution.Projects.Select(p => new SolutionProjectInfo(p.Name, p.FilePath, p.OutputFilePath)).ToList()); } }
public async Task <Microsoft.CodeAnalysis.Solution> OpenSolutionAsync(string solutionPath, string buildConfiguration, CancellationToken cancellationToken = default(CancellationToken)) { cancellationToken.ThrowIfCancellationRequested(); var fileExist = _fileSystem.File.Exists(solutionPath); if (!fileExist) { throw new OpenProjectException($"Could not find any solution file at {solutionPath}"); } return(await _solutionOpener.GetSolutionAsync(solutionPath, buildConfiguration, true)); }