相关疑难解决方法(0)

Visual Studio重建未修改的项目

所以,正如标题所示,我现在有一个VS2010解决方案,里面有大约50个项目.如果我对没有引用的"顶级"项目进行更改,那么VS仍会重建所有50个项目.我正在运行Visual Studio 2010 Ultimate而没有任何附加组件.我正在使用ILMerge将所有项目合并到一个文件中.

我已经通过检查较低级别dll的时间戳来验证这一点,并且看到它们确实已经重建,即使它们的代码没有被触及.

我已阅读所有回复和评论:

Visual Studio 2008不断重建

Visual Studio不断构建一切

奇怪的VS2010构建故障发生在我的解决方案中

C#项目在Visual Studio中重建的原因

但是他们中的大多数只提供卸载项目的建议,以加快构建时间,但没有具体的解决方案.我试图弄清楚为什么VS认为这些依赖项目需要在不修复时进行重建.

我已经打开了'工具>选项>项目和解决方案>构建和运行>仅在运行时构建启动项目和依赖项'但没有任何效果.

此外,如果我只是重建一个只有8个(in)直接依赖项的"中级"项目,那么即使没有调用ILMerge并且没有修改任何依赖项目,它仍会构建所有8个项目.

感谢大家提供的任何见解.

添加

为了测试一些建议,我从头开始创建一个新的WinForms项目.然后我在该解决方案中创建了两个新项目.我将所有代码和资源(不是项目文件)从我的两个"最低级别"项目复制到两个全新的项目中(我通过将资源管理器中的文件和文件夹放到Visual Studio中的项目中来完成此操作).

最低的项目,我们称之为B,没有引用任何其他项目.下一个项目A仅引用了B. 因此,一旦我将所需的.NET和外部程序集引用添加到项目中,那么解决方案就会构建.

然后,我获得了我的新WinForm项目参考A并完成了完整版本.所以ref链是:

WinForm - > A - > B.

然后我修改了WinForm 并进行了标准构建(F6).和以前一样,Visual Studio重建了所有三个项目.

源文件在项目中的某些系统eleminiation后我发现,如果我打消了我Resources.Designer.csResources.resx(并评论指出,利用了的代码.Properties.Resources对这些资源的对象),然后修改的WinForm将不再重建整个解决方案,只会重建WinForm.

添加Resources.resxResources.Designer.cs返回项目B(但保留引用的代码,以便没有任何东西利用资源)将重新引入完整的构建行为.

要查看我的资源文件是否已损坏,我再次删除它们,然后创建一个新文件(通过Project Properties - > Resources)并重新添加与以前相同的资源,这是一个单独的Excel文件.使用此设置,仍将进行完全重建.

然后我删除了单个资源,但将资源文件保留在项目B中.即使没有添加资源,但资源文件仍在项目中,也会发生完全(不需要的)重建.

看起来只是将资源文件添加到(.NET 3.5)项目中将导致Visual Studio 2010始终重建该项目.这是一个错误或预期/预期的行为?

再次感谢所有人!

c# msbuild ilmerge visual-studio-2010 visual-studio

65
推荐指数
5
解决办法
3万
查看次数

Visual Studio不断构建所有内容

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

我刚刚在项目A中做了一个更改,它构建了九个项目A引用的其他项目,但没有代码更改.

有加速这个过程的技巧吗?

build-process visual-studio-2010 visual-studio

6
推荐指数
1
解决办法
4392
查看次数