Managing shared binary dependencies across multiple solutions

Ok, we have a number of solutions that have many common binaries:

we do the following.

In the shared disk, we have the following layout, where there is a directory for each binary dependency and a subdirectory for each version

BinaryDep1
----------- Volatile
----------- 1.0
----------- 1.1
--------- - 1.2

BinaryDep3
----------- Volatile
----------- 1.0
----------- 1.1
--------- - 2.2

BinaryDep3
----------- Volatile
----------- 1.0
----------- 1.1
--------- - 1.2

In our solutions, we have an XML file that lists all dependencies and versions. We have a script that then goes to the shared drive and downloads the dependencies into a solution subfolder called / ext

It works really well, but it has a few drawbacks that we want to improve and I wanted to get feedback from people.

  • We have a lot of solutions, so if they all depend on the same version of the binary dependency, we get one instance per solution (as expected, it should be itself). So if I have 5 solutions that depend on Syncfusion, I get 5 copies of syncfusion on my desktop. Two questions here: 1) slow load times (5x longer than I need) and takes up a lot of disk space.

We like the model that has a local subdirectory for the / ext solution, so we don't need to change the project references, but they seem to be competing forces.

any ideas on how to normalize loading so we don't load 5x data and the same disk size without going to manually update project links where I need to change the link in VS for every version update.

0


source to share


3 answers


How about the same stress on all development machines?

how



D: / projects
d: / projects / ext (shared libraries you need here)
d: / projects / project1
d: / projects / project2
d: / projects / project3
d: / projects / projects4
...

ps: I like conventions.

+1


source


You can look at DEVPATH .



Other StackOverflow Links: DEVPATH Support

+1


source


Is there a reason for not putting shared assemblies in the GAC ?

0


source







All Articles