2008-10-21 94 views

回答

108

它删除与解决方案相关的所有编译和临时文件。它确保下一个版本是完整版本,而不是仅重新编译的文件。

+3

那么“Build”和“Rebuild All”之间有什么区别? – ChadD 2010-10-14 18:44:17

+2

想象一下有3个项目的解决方案。Build只编译自上次构建以来已更改的项目。重建,编译一切。 – BigJump 2011-01-19 10:24:37

+18

重建解决方案与运行Clean Solution然后构建解决方案基本相同吗? – 2011-02-23 18:34:16

4

清除编译过程中创建的文件。下次有效地强制重新编译/构建。

61

它删除以前编译/编译过程中生成的所有对象代码。 它删除所有以下类型的文件: -

* .OBJ - 对象代码

* .PDB - 程序调试DATABSE文件

* .BSC - 浏览器源码DATABSE

* .ilk - 增量链接文件

* .SBR - 源浏览器中间文件

* .idb - 重建相关性文件

* .lib - 将库文件

的* .exe - 可执行

JFYI - 即使是重新生成所有指令会做这一切,然后去建立一套完整的源文件。

-AD

5

这是一篇老帖子,但我认为这值得一提。在为Silverlight编码时,我通常同时打开Blend和VS2010。正因为如此,有时候VS2010会吓坏了,而IntelliSense无法找到东西是什么东西,导致它错误地突出了很多错误。

清理解决方案修复了此问题。

2

当您清洗解决方案时要小心;当你清理一个解决方案时,如果你在你的项目中引用一个库(比如说nhibernate),并且如果这个库有一个依赖项(比如说iesi.collections),那么即使你重建了iesi.collections也会被删除解决方案,你必须把这个DLL再次放到你的文件夹中。或者您也可以参考iesi.collections并从其属性中选择本地复制:是选项

0

仅供参考,无论是“清理”还是“重建”都将删除非构建文件,例如在预生成命令期间复制的文件。我一直对此感到困惑!

11

我希望这是一个评论,但显然需要50代表。

为了警告其他人,我发现重建解决方案并没有自己清理干净。我经常不需要清理它,并在它正常工作后重建它 - 我认为重建它自身会强制完全编译而没有清理并覆盖所有内容,但不会摆脱额外的内容。

没有看看重建代码是否明智,只是一个普遍的观察,以防其他人有相同的问题。