Visual Studio中的构建解决方案、重新构建解决方案和清洁解决方案之间的区别是什么?

什么时候使用这些工具比较合适?


当前回答

构建解决方案-构建解决方案将构建您的应用程序,构建有任何文件更改的项目的数量。并且它不清除任何现有的二进制文件,只是替换bin或obj文件夹中的更新程序集。

重建解决方案-重建解决方案将通过构建解决方案中可用的所有项目来构建您的整个应用程序,并清理它们。在构建之前,它会清除bin和obj文件夹中的所有二进制文件。

清洁解决方案-清洁解决方案只是清除bin和obj文件夹中的所有二进制文件。

其他回答

生成解决方案只生成解决方案中已更改的项目,而不影响未更改的程序集,

ReBuild首先清理解决方案中的所有程序集,然后构建整个解决方案,而不管所做的更改。

清洁,简单地清洗溶液。

我有一个空白的解决方案BuildRebuildClean和三个类库模型,存储库,通知。

我在通知类库中使用模型和库。

然后:

生成解决方案增量生成,只编译已更改的文件。如果一个程序集没有变化, 它不会被重建。此外,它不会删除任何中间文件。 如果在模型库项目中修改一些代码,则BUILD解决方案。 在下面的屏幕截图中,参考DLL的时间戳,在Models和Notification库中更新了EXE。

重建解决方案删除所有编译文件和编译所有不考虑更改, 忽略之前做过的任何事情。 右键单击解决方案名称BuildRebuildClean。它所做的是删除所有的程序集, EXEs和引用文件再次编译。

清洁解决方案删除bin/obj目录下所有已编译的中间文件(即exe和dll)。

这只涉及“构建解决方案”选项。

我完全受够了Visual Studio无法真正清理解决方案,所以写了这个小工具来为你做这件事。

首先在VS中关闭你的解决方案,并将它的文件夹从Windows资源管理器拖到这个应用程序或它的图标中。根据窗口底部的设置,它还可以删除额外的东西,这将有助于你手动上传你的解决方案到GitHub或与他人共享:

简而言之,它会把所有的“调试”文件夹、智能感知和其他可以被VS重建的缓存放入回收站。

我只是认为重建是先执行清理,然后再执行构建。也许我错了……评论?

Clean将清除bin/Debug文件夹中的工件。删除bin/Debug文件夹中的所有文件。

Build检查bin/Debug文件夹中的构件,如果需要,然后创建构件(同时检查构建时错误)。

重建=清洁+一次构建。这将首先删除bin/Debug文件夹中的所有文件,然后在bin/Debug文件夹中再次创建工件。

您可以通过打开并观察bin/Debug(或Release)文件夹,然后清理、构建和重建项目来确认这些操作。