Visual studio VisualStudio一直在构建一切

Visual studio VisualStudio一直在构建一切,visual-studio,visual-studio-2010,build-process,Visual Studio,Visual Studio 2010,Build Process,我有一个包含许多项目的大型.sln文件 我刚刚在项目a中做了一个更改,它构建了9个项目a引用,但没有代码更改 是否有加快此过程的技巧?右键单击项目a时选择“仅生成”应该可以做到这一点。我不确定在构建解决方案时是否有办法阻止它构建引用的项目(这是标准的“build”命令所做的)。确保您的项目依赖关系是正确的。右键单击项目并转到“项目依赖关系”。确保每个项目仅依赖于需要链接的最小其他项目集。分而治之:通过创建包含您正在处理的项目的逻辑子集的其他解决方案来限制解决方案中的构建时间。这将限制您的范围并加

我有一个包含许多项目的大型.sln文件

我刚刚在项目a中做了一个更改,它构建了9个项目a引用,但没有代码更改


是否有加快此过程的技巧?

右键单击项目a时选择“仅生成”应该可以做到这一点。我不确定在构建解决方案时是否有办法阻止它构建引用的项目(这是标准的“build”命令所做的)。

确保您的项目依赖关系是正确的。右键单击项目并转到“项目依赖关系”。确保每个项目仅依赖于需要链接的最小其他项目集。

分而治之:通过创建包含您正在处理的项目的逻辑子集的其他解决方案来限制解决方案中的构建时间。这将限制您的范围并加快构建

请参阅本MSDN文章中的分区单一解决方案模型:

文章的主要引述:

Separate solution files allow you to work on smaller subsystems within your overall system 
but retain the key benefits of project references. Within each subsolution file, 
project references are used between constituent projects.

另一件需要注意的事情是,因为我刚刚遇到过,如果您在解决方案打开且部分代码通过同步更新时使用同步视图,它有时会错误地在文件上设置时间戳,因此它一直认为您的源文件已被修改,并且每次都在编译您的项目


要解决此问题,我必须关闭解决方案并重新打开它,它的行为符合预期。

当项目的文件实际上不存在时,就会发生这种情况。
项目无法确定文件是否已更改(因为它不在那里),因此它将重建


只需查看项目中的所有文件,并搜索附近没有可展开箭头的文件。

将“生成输出详细信息”更改为“详细信息”,然后查看顶部的内容。在我的例子中,它告诉我项目不是最新的,因为有一个文件丢失了。

你这样说显然是个bug。如果A发生更改,则A依赖的项目不应重建,而应仅重建依赖于A的项目。在以前版本的VS中,我看到在涉及自定义构建步骤时会发生这种情况。因此,此方法将让您使用一个项目创建解决方案(本例中为项目A)只是引用了所有其他项目的DLL,而不是所有其他项目的DLL?所以,当你构建时,你只需要重新编译一个项目。不一定只有一个项目,但可能。可扩展箭头?这不只是GUI类(例如Windows窗体)和类似的复合类吗?在我的一个项目/解决方案中,我有许多.cs文件(都存在),其中包含独立的简单类,并且没有箭头。如何将生成输出详细信息更改为详细信息?一种方法可能是。