因为之前写的程序比较小,编译起来比较快,所以一直都没有太在意 Build 和 Rebuild 之间的区别,后来发现两个还是有很大不同。
Build 只针对在上次编译之后更改过的文件进行编译,在项目比较庞大的时候,Build 还是很有优势的。
Rebuild 会编译所有文件,一般相当于执行 Clean + Build(清理并生成)。
无论 Build 和 Rebuild,都可以分别针对解决方案和项目。当目标是解决方案的时候,那么 Build 或者 Rebuild 的目标就是解决方案中所有的项目。
Build 编译的范围包括有更新的 Projects 以及依赖这些 Projects 的项目。
一般推荐使用 Build 或 Clean+Build。
注意,Build 所检测的是项目中的改变,主要是源代码;如果删除编译生成的 dll 或者 exe 文件,那么再次进行 Build 并不会导致新的编译。(没有试过,如果资源文件发生改变是否会引起第二次编译)
有一种说法是 Rebuild 会更新项目的 xml-documentation 文件,但是 Build 不会。
最后,在 Visual Studio 2008 中:
Build Solution 的快捷键是 F6,
Build Selection 的快捷键是 Shift+F6,
Cancel Build Process 的快捷键是 Ctrl+Break ;
而在 Visual Studio 2010 中:
Build Solution 的快捷键是 F7 (或者 Ctrl+Shift+B),
Rebuild Solution 的快捷键是 Ctrl+Alt+F7
Build Selection 的快捷键是 Shift+F6,
Cancel Build Process 的快捷键是 Ctrl+Break ;
不知道为什么要有一个 F6 和 F7 的区别?
本文参考了一下文章或链接: