Pregunta

I am upgrading the SP2007 project to SP2010 where I have made necessary changes to the project(Changed the reference,master pages etc). I have deployed the farm solution in my machine I am getting the following error Cannot add the specified assembly to the global assembly cache: System.Web.Extensions.dll. . I have referred this dll in my project.

Could anyone help me to resolve this issue

¿Fue útil?

Solución

As far as I know, you shouldn't need to deploy the System.Web.Extension dll with a SharePoint 2010 wsp package - SharePoint 2010 already offer Ajax support ootb, so the dll you are referencing should be present on the server.

Furthermore, IF the need to deploy aforementioned dll arise, you should consider to install it manually. If you use a wsp package, you may have problem in the future if you need to retract/unistall the solution (when retracted, a solution will remove all of its deployed dll, even if some of them are used by other solutions), so perhaps it's safer if you find another way to deploy the dll.

That said you should:

  • confirm that the System.Web.Extensions.dll is available in gac on your test environment
  • remove the dll from the deploy list in your visual studio project (leave a comment if you need guidance)

Otros consejos

Sometimes this happen when your particular dll is locked in GAC\temp directory.
1. To check it you need to download LockHunter (free easy-to-use lightweight tool to view locked files\folders), you need to download x64 version of course.
2. Next you need to navigate to c:\WINDOWS\assembly\temp\. If you cannot navigate to folder using windows explorer try third party software (like Total Commander for example).
3. Under this folder there are some sub folders with names like [Guid]. Copy current path (c:\WINDOWS\assembly\temp\) to LockHunter checkbox and press check it. If any of files under this folders is locked, it will display their.
4. Find your dll in this list of files and see what proccess lock it (do not use "Unlock It" button in LockHunter, it works not very well).
5. When you find a process that locks your dll, you need to restart it and check folder again - LockHunter must indicates that your dll is not locked any more.
6. Try to deploy again.

From my practice, I'm about 80% sure that this is powershell process :), but other candidates are w3wp, owstimer, webanalyticsservice

Licenciado bajo: CC-BY-SA con atribución
scroll top