2009-10-01 37 views
0

在VS2005中,我有几个相互依赖的C#项目。构建C#项目及其依赖关系

如果项目A依赖于B(例如引用它),然后我想B来构建每当我建立一个假设的B已经以某种方式改变了自去年建成。这就是VC项目的方式,但由于某些原因,它似乎不适用于C#项目。如果我干净B,然后建立一个它只是告诉我,它不能二分找到B ...

任何想法?

回答

1

你需要单独构建实际的解决方案而不是项目。

+0

不是一个选项,因为该解决方案还包含许多其他项目,其中一些我现在不想构建。 –

2

如果您在Visual Studio解决方案右键单击,然后选择“项目构建顺序”你可以验证在这些个别项目正在建设中的顺序。此外,请确保您没有在“发布”版本中引用“调试”DLL,反之亦然。

+0

构建顺序很好。正如我所说:引用B,它在依赖窗口和构建顺序中显示。 如何在发布版本中引用调试版本?参考之间的项目... –

0

如果添加所有的项目,相同的解决方案,并建立它们之间的依赖关系,然后Visual Studio中应能制定出正确的顺序,并建立当你的“下”一个改变的东西,需要建立的一切项目。

在你的情况下,它会知道它有建设A.

1

一个解决方案,您可以定义项目间的依赖之前重建B中。如果你使用它,它应该自动工作。通常,依赖关系也是自动设置的。你可能会添加对程序集的引用,而不是项目。在添加引用对话框中查看“项目”选项卡。

+0

要发布此,+1 –

+0

不。参考是项目,依赖关系在那里。但它仍然不能构建所需的项目。 –

0

覆盖目标AfterResolveReferences在你的csproj。然后使用项目@(NonVCProjectReference)列出每个项目的路径并构建它们。 我建议您阅读MSBuild documentation