在Visual Studio中有没有办法让一个项目构建另一个项目?

10

我们终于在工作中建立了一个源代码控制系统,而我负责设置它。我读到不包括二进制文件是通常的最佳实践,所以我没有将其加入源代码控制。然而,我们有两个多用途的实用程序项目(每个都在自己的解决方案中),生成实用的.dll文件,并包含在几乎所有其他项目中(每个在自己单独的解决方案中)。我们从我们的项目中添加对实用程序dll的引用。

我希望我们的解决方案可以这样设置:如果参考的dll没有构建,那么解决方案将为自己构建该dll,就像makefile检查其依赖项并在缺失或过期时构建它们一样。

我对VS的构建过程还不熟悉,所以尽量保持简单。任何关于构建过程概述教程的链接也很好。Google搜索VS参考返回了一堆如何添加引用链接,这不是我想要的。

答案:(3步骤过程)通过右键单击解决方案并添加现有项目,添加一个项目引用而不是二进制引用。然后,在项目选项卡下,选择项目依赖项并修改项目,使一个项目依赖于另一个项目。最后,删除旧的引用并使用Add references对话框中的项目选项卡重新添加引用。


2
如果您引用了共同的项目,那么它将构建两个项目。只需更改公共代码或删除dll并重新构建即可。 - James Black
MSDN上的一些细节:MSDN:如何准备和管理构建 - Span
谢谢@Span。这帮助我解决了依赖关系/构建顺序的问题。 - Marty Neal
1个回答

7
在我们工作的地方,通常使用项目引用而不是二进制引用(一段时间以前我们使用的是二进制引用)。当你包含一个项目引用时,dll将随着应用程序的其余部分一起构建。
唯一需要回到二进制引用的时候是在Visual Studio版本之间(例如,一个项目在2010年,其他所有项目在2008年。2010年的项目将不得不使用二进制引用几个月,直到其他人赶上...项目不兼容似乎是不应该存在的Visual Studio限制)。
编辑:右键单击解决方案,然后单击添加,最后选择“现有项目”即可添加项目引用。确保实用程序项目也在源代码控制下,并确保工作区设置正确,否则其他人将无法正确打开项目!

项目引用听起来像是我需要的,我该如何添加一个? - Marty Neal
1
在 Visual Studio 中右键单击解决方案,然后单击“添加现有项目”。 - Giovanni Galbo
1
然后从项目中删除旧引用,再从项目选项卡中重新添加引用。 - Logan Capaldo
@Logan 谢谢,我刚回来就要说它还是不起作用,但这是拼图的最后一块。 - Marty Neal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接