1

We have a solution file that contains multiple solutions since we have a lot of developers working on various parts of our application.

Developers generally update the individual solutions but they won't update the main solution file. I would like to have an automated process during our daily build to compare the main solution with each individual solution so that everything gets built properly.

I've been looking at the MSBUILD framework as well as the DTE/DTE2 object model as options to automate. I need to get down to the project level of the solution file to make sure all projects are present in the main solution file that are in each child solution.

I've been playing around with the example on this site where someone asks the question: Is it possibile to use the MSBUILD API to parse solution and project configuration?

One of the issues I'm running into with using DTE/DTE2 automation is that when executing the code in a console application I get a console window popping up, as well as a notification in the Windows System tray that "new extensions are available for download".

Are there any other ways of automating the comparison?

Jim MacDiarmid
  • 79
  • 1
  • 10

1 Answers1

0

Had the same problem. I took SLNTools, and added functionality in there to combine several solutions into a single Combined.sln.

Note: Beware that this way, solutions can start to have weird dependencies, and in general it's not a very good way to partition a large project. Consider breaking up the big project into multiple independent ones, with clear APIs between them (we're doing that now at great cost).

Jonathan
  • 6,939
  • 4
  • 44
  • 61
  • I agree, bite the bull3t and create some separation. You can try nuget....but I actually like "ivy" (apache) as a binary repository. – granadaCoder Oct 30 '14 at 16:55