Search code examples
iis-7sharepoint-2007gac

Make Sharepoint use new version of GAC assembly after update without IISReset


We use a few asp.net UserControl libraries in some of our SharePoint sites. Sometimes we make changes to the UserControls' assembly or sometimes some of the assemblies it depends on can change (such as a logging assembly). We have these assemblies in the GAC. When we replace the current version with a new version of the assembly, the code changes do not take effect until an iisreset is performed. Like the assembly SharePoint is actually using is cached elsewhere on disk or in memory? If I'm the only one using the SharePoint site, an iisreset is fine, but if there are other users using the site for data input or other development, it can really mess them up. Can someone explain what I'm seeing happening here and tell me if there is a way to force the assembly to reload from the GAC so I can see my code changes without an iisreset?


Solution

  • SharePoint uses cached version of DLL and resetting the iis is the only way. Other option is to put your DLLs in Bin folder which will cause app pool to reload the assembly. A general recomendation of Sharepoint development is each developer having their own VM with Sharepoint installed.