private static void BuildReportFromStandAloneProject(string file, string reportFile, bool ignoreGeneratedCode = false) { using (MSBuildWorkspace mSBuildWorkspace = MSBuildWorkspace.Create()) { Task <Project> task = mSBuildWorkspace.OpenProjectAsync(file, new CancellationToken()); task.Wait(); Project[] result = new Project[] { task.Result }; RoslynMetricsExe.BuildReport(result, reportFile, ignoreGeneratedCode); } }
private static void BuildReportFromSolution(string solutionFile, string reportFile, bool ignoreGeneratedCode = false) { using (MSBuildWorkspace mSBuildWorkspace = MSBuildWorkspace.Create()) { mSBuildWorkspace.LoadMetadataForReferencedProjects = true; mSBuildWorkspace.WorkspaceFailed += MSBuildWorkspace_WorkspaceFailed; Task <Solution> task = mSBuildWorkspace.OpenSolutionAsync(solutionFile, new CancellationToken()); task.Wait(); IEnumerable <Project> list = task.Result.Projects.ToList <Project>(); RoslynMetricsExe.BuildReport(list, reportFile, ignoreGeneratedCode); } }