mardi 24 février 2015

Managing interdependent project reference in solution file


Context for question


I am working on a legacy product. That has multiple projects - Class libraries, websites, windows services, web services etc.. I have a single solution file that contains all projects( almost 70 projects). I have used Teamcity CI to build this solution. It is working fine. I am using Microsoft visual studio.


Code Refactor


Now, we find that we should break up those into multiple solution files each one of will refer to required class libraries.



  • If there is change in only one of windows service/web service/website, then that solution will be build by teamcity, not the entire solution.

  • Efficient debugging explained below.


Question - Is is advisable to do this?


Possible scenarios: Say svc1 depends on lib1, lib2, lib3. and svc2 depends on lib1, lib2.



  • Svc1 - Svc1.sln ( containing lib1,lib2,lib3)


    • lib1

    • lib2

    • lib3



  • Svc2 - Svc2.sln ( containing lib1, lib2)

    • lib1

    • lib2




Here, lib1, lib2 are shared library, and svc1, svc2 depend on them. lib1, lib2 reside in same project location, but 2 different solutions refer them and they are added as project reference.


Question - Is it still advisable to do this refractor for sake segregating solution files to make build and debugging ( this is becasue, now svc1 will have only 3 projects dependent. And I don't have to open 70 projects to debug svc1 ) faster and efficient.





Aucun commentaire:

Enregistrer un commentaire