是否有Visual Studio Build Profiler?

时间:2010-08-11 20:35:29

标签: c# .net msbuild build

我的VS.NET 2008解决方案需要更长的时间来编译(ASP.NET 3.5 + ASP.NET MVC 2 + C#),我想知道是否有办法知道哪个项目需要更长的时间来编译以及为什么?我禁用了一些项目的编译,这有助于减少构建时间,但我希望它更快。

3 个答案:

答案 0 :(得分:15)

Tools -> Options -> Projects and Solutions -> Build and Run

然后更改MSBUild project build output verbosity

当正常(默认为最小)时,它会为每个项目提供时间,因此可以用来指出造成减速的原因。 (假设您使用“输出”窗口)

或调整到更高级别以查看编译过程中发生的更多细节。

答案 1 :(得分:8)

您可以使用MSBuild Profiler来详细了解每个项目及其任务所花费的时间。它有点旧,似乎没有得到支持,但我仍然发现它非常有用。从here下载并安装,然后从VS命令行运行如下:

MSBuild.exe MySolution.sln /l:MSBuildProfileLogger,MSBuildProfiler,Version=1.0.1.0,Culture=neutral,PublicKeyToken=09544254e89d148c

完成后,它会弹出一个GUI,其中包含解决方案的树形结构细分,包含处理每个项目和任务所花费的时间。

答案 2 :(得分:2)

@ PostMan的回答是你需要的(因此我的+1)

MSBuild (4.0) debugger也可能有用