我有一个每天在 TFS 中构建的大型解决方案。该解决方案涵盖多个逻辑子解决方案 - 例如 ApplicationA 由项目 A、B、C、D 组成; ApplicationB由项目A、B、E、F组成,ApplicationC由项目A、C、G、H组成。
目前我们在本地制作构建解决方案文件的副本并卸载我们不需要构建的项目来处理项目 - 因此对于 ApplicationA 我们将卸载除 A、B、C、D 之外的所有内容。
另一种方法是创建多个解决方案配置,这些配置只会为 ApplicationA 构建项目 A、B、C、D - 但我担心这会很麻烦,而且 .sln 文件最终会变得很大。
问题是许多项目被合并到一个 wix 包中并一起安装 - 所以主要的 .sln 文件是有意义的,特别是从构建和调试的角度来看。
维护多个解决方案文件似乎不合适,因为添加新项目时我们需要将它们添加到多个解决方案中。所以也许配置方法是要走的路,但感觉也不对。
有没有人遇到过类似情况,您是如何解决的?
最佳答案
听起来有五个解决方案文件是有意义的:
- Master.sln,包含所有项目
- ApplicationA.sln,包含项目A、B、C、D
- ApplicationB.sln,包含项目A、B、E、F
- ApplicaitonC.sln,包含项目 A、C、G、H
将所有这些解决方案文件放在同一个顶级目录中很好。
But maintaining multiple solution files isn't feasible as when new projects are added we'd need to add them to multiple solutions.
为什么这是个问题?无论如何,您需要确定项目需要哪些应用程序...在主解决方案中创建项目(肯定需要它),然后对需要它的解决方案使用“添加现有项目”。这真的并没有那么多工作——而且我不希望经常添加新项目。 (如果是,则表明存在更大的问题。)
关于c# - 组织大型 C# 解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15260872/