Preventing removal of a shared dll during a wsp solution uninstallation/retraction

1.2k Views Asked by At

I'm working on a bunch of solutions which uses a third party DLL from vendors like Telerik. We use the dll in most of your solutions. But when i uninstall any of the solutions the dll is getting removed from the assembly. This is a very unfortunate behavior.

I guess even putting the dll in the bin folder wont help it. Because i can use multiple solutions in a same web application. In that case if i remove on solution it is removing the dll from bin folder too.

What is the workaround for this ugly issue?

2

There are 2 best solutions below

1
Jeroen Ritmeijer On BEST ANSWER

This is indeed painful. You could consider merging 3rd party DLLs in using ilmerge. Additional approaches can be found in Muhimbi's free SharePoint Coding Guidelines (Chapters 8 and 9)

0
ngm On

One option is not to include the third party DLLs in your individual solutions. Anything that gets installed with a solution will be removed when you uninstall that solution. You can have a 'framework' solution that installs common DLLs. This way, those common DLLs are only removed if you remove your framework solution. Or you could have a single solution installer for each shared DLL if you want more fine-grained control over them.

See also the question on SharePoint.SE: Multiple solutions using shared dlls can cause havoc when individual solutions are retracted