将所有项目添加到解决方案中是否更好?或只添加DLL引用?

Saw*_*wan 3 .net c# projects-and-solutions visual-studio-2010 visual-studio

我需要证据和资源,我有很多项目,彼此相关,我已经渗透到他们的代码,我只在他们的一小部分工作,我有其他项目的所有二进制文件的最新版本,最好只添加我使用的项目并将引用添加为dll引用,或者添加其他项目,即使我不需要更改它们或查看它们.

这是个人偏好吗?为什么?什么是最佳做法?

注意:项目数量正在增加,它们现在是:25个项目,还在计算!

请提供参考和链接,而不是一般答案.

注意:所有项目都是由我们的团队开发的,而不是外部开源项目

Ste*_*rov 6

这不是个人喜好.

只要有可能,您应该引用项目本身而不是它们生成的DLL.原因如下:

  • 构建Debug和Release将产生一致的输出
  • 不会有陈旧的参考
  • 当知道某些内容发生变化时,VS知道要构建什么,尤其重要的是当链接引用A-> B-> C时,如果使用DLL,更改A的dll将不会导致重建C

唯一可能的问题是你正在使用多少个项目.如果太多,那么在每个部分本身一致的部分中分解解决方案并引用所涉及的所有项目,因此SolutionA具有Project1,Project2,Project3和SolutionB具有Project3,Project4和Project5,但构建要么仍将产生一致的构建.Sill保持解决方案,包含发布版本的所有项目.

25个项目仍然可以管理.您也可以使用一个解决方案,将项目分组到不同的解决方案文件夹中,这样它就不是VS的解决方案资源管理器中的25个大列表,但它们仍然可以同时构建.