Q:
I have a dll
which used in many systems, when i make any modification in that dll ,i have to build it, copy this dll ,paste it in the bin folder
of each web application module, and add a reference to the new one.
Is there any way to reduce the number of these steps? , i mean , is there any way to make any modifications to this dll visible in all systems with out all these steps.
EDIT:
the GAC
will solve my problem if the applications at the same host ,but to be more clear , we use a source control to modify classes and more than one can modify this dll , what i want is: when i make any change to that dll , this doesn't force me to copy it through the bin folders of my applications.
thanks in advance.
You can make this assembly as Shared Assembly, and install it in the GAC folder
and reference this assembly in each application from GAC folder
Use shared assembly if possible or if you want to still continue with private assembly then create a batch file which will copy the dll to all the desired location if your multiple web application is running on the same server
steps to create shared assembly
http://www.vkinfotek.com/assemblyhowto.html
http://www.dnzone.com/go?698
The global assembly cache stores assemblies specifically designated to be shared by several applications on the computer.
Refer to How to install an assembly into the Global Assembly Cache in Visual C#.
Edit:
Refer to Multiple Output paths for a C# Project file.