我正在开发一个静态分析程序,用于在C#中分析我的项目。
我使用Roslyn完成这项工作。我想分析的项目非常庞大,大约有300个项目。当我使用下面的代码时,大约需要1.5分钟。
var solutionName="solutionPath.sln";
MSBuildWorkspace workSpace = MSBuildWorkspace.Create();
Solution solution = workSpace.OpenSolutionAsync(solutionName).Result;
1.5分钟的加载时间对我来说更多,因为我的Visual Studio在大约10秒钟内加载了这个解决方案。
有没有办法减少加载时间?
答案 0 :(得分:1)
可能不是;那个时间大致是我对那个尺寸的解决方案所期望的。 Visual Studio正在缓存上次加载内容的结果(不,在MSBuildWorkspace中没有简单的方法可以使用该缓存)。我敢打赌,如果您通过解决方案删除隐藏的.vs文件夹并重新打开Visual Studio,那么它也需要很长时间。