Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在VisualStudio中,如何使增量生成与调试会话触发的生成一样快?_C#_Visual Studio 2010_Incremental Build - Fatal编程技术网

C# 在VisualStudio中,如何使增量生成与调试会话触发的生成一样快?

C# 在VisualStudio中,如何使增量生成与调试会话触发的生成一样快?,c#,visual-studio-2010,incremental-build,C#,Visual Studio 2010,Incremental Build,我有一个VisualStudio2010解决方案,其中包含40个ish项目(C++one C++/CLI)。我已经配置了VisualStudio,以便它在开始调试之前构建整个解决方案 现在假设我更改了一个没有其他项目依赖的“leaf”项目的代码。当我显式地增量构建解决方案(F6或F7)时,我会看到解决方案中每个项目的构建输出行。但是,不会重新编译最新的项目。例如,您不会看到项目的警告。这确实需要时间(可能需要5-10秒) 现在假设我再次更改相同的文件,并开始调试(F5)。现在发生了一些不同的事情

我有一个VisualStudio2010解决方案,其中包含40个ish项目(C++one C++/CLI)。我已经配置了VisualStudio,以便它在开始调试之前构建整个解决方案

现在假设我更改了一个没有其他项目依赖的“leaf”项目的代码。当我显式地增量构建解决方案(F6或F7)时,我会看到解决方案中每个项目的构建输出行。但是,不会重新编译最新的项目。例如,您不会看到项目的警告。这确实需要时间(可能需要5-10秒)

现在假设我再次更改相同的文件,并开始调试(F5)。现在发生了一些不同的事情。仅重新编译更改的项目(大约需要1秒钟),然后调试几乎立即开始

Visual Studio似乎有两种增量构建策略,而最佳优化策略似乎只能作为调试会话的副产品提供。

问题:


有没有办法在不启动调试会话的情况下手动调用此更优化的生成策略?

当您调试时,它只生成要调试的项目。构建解决方案时,它将构建解决方案中的所有项目。即使没有实际编译任何内容,每个项目都会涉及到检查。构建过程中的这些步骤,即使没有执行编译操作,也是构建解决方案所需时间更长的原因

如果进入工具->选项。。。在“项目和解决方案”->“构建和运行”下,有一个名为“MSBuild项目构建输出详细信息”的设置,将其设置为“正常”或更高,可以让您更深入地了解构建vs调试时的实际情况。您必须显示输出窗口,并将其设置为显示生成输出,以查看该设置中的信息


您可以按Shift+F6构建当前项目,速度应该相同。

@BoltClock:哦,我想这取决于配置文件。我总是选择C++键盘方案,F7是增量构建。(修正了问题)