El AJAX Control Toolkit nos permite añadir más de 30 controles a nuestras aplicaicones Web para mejorar enormemente su interfaz de usuario. Tenemos desde simples mejoras estéticas como sombras, diálogos o validaciones mejoradas hasta complejos controles como un editor HTML o animaciones.

Para añadirlo a nuestro Visual Studio sólo hay que crear un nuevo grupo en la barra de herramientas y usar la opción "Elegir elementos" (Choose Items si eres como yo y usas siempre la versión en inglés) para seleccionar la DLL del Toolkit y que los controles estén disponibles en VS:

El problema es que en Visual Studio 2010, al pulsar "Browse" y seleccionar la DLL del Toolkit se produce un error y no deja cargar los controles:

"Could not load file or assembly 'file:///C:\AjaxControlToolkit\AjaxControlToolkit.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)"

El motivo es el tratamiento especial que hace la versión 4.0 de .NET de los ensamblados bajados de Internet. El sistema operativo marca con un indicador especial a los ensamblados descargados de cualquier recurso remoto (Internet o una carpeta compartida en la red local). De este modo pueden ser reconocidos como posibles amenazas de seguridad al proceder, a priori, de un origen no confiable como es Internet. El sistema operativo los trata de una forma diferente debido a esto aunque los tengamos copiados ya en una carpeta local. Sin embargo .NET en sus versiones anteriores a la 4.0 hacía caso omiso de esta información sobre el origen y al estar ubicados en local los trataba como ensamblados confiables (por eso no te falla en VS2008 o anterior). Como mejora de seguridad en .NET 4.0 se tiene en cuenta esta particularidad y limita la capacidad de todos estos .exe o .dll que se descarguen directamente o dentro de un ZIP desde una ubicación remota. Por este motivo la DLL del AJAX Control Toolkit no es capaz de cargarse en el entorno de Visual Studio.

Para solucionarlo lo que tenemos que hacer es desbloquear su funcionalidad. Para ello localiza la DLL del toolkit en tu disco duro y en sus propiedades verás un botón "Desbloquear" que sirve precisamente para esto (la captura la he hecho en Windows 7 RC):

Necesitarás permisos de administrador para que el botón funcione (si no, le darás y creerás que ha funcionado pero no es cierto), así que si estás en una carpeta de sistema (como por ejemplo la de Archivos de Programa) mueve antes la DLL a otro lugar, cambia este atributo y devuélvela a su sitio original.

Ahora repite la operación anterior y verás como el problema desaparece y los controles se incorporan a tu barra de herramientas.

Enla actual versión Beta de Visual Studio 2010 no funciona la integración con el entorno de estos controles (al menos en el mío no), de modo que no aparece el diálogo de asociar el extensor con un control que tengas seleccionado, como en VS2008. Es de suponer que estará arreglado en la versión definitiva.

¡Espero que te sea útil!

💪🏻 ¿Este post te ha ayudado?, ¿has aprendido algo nuevo?
Pues NO te pido que me invites a un café... Te pido algo más fácil y mucho mejor

Escrito por un humano, no por una IA