11.16.2010

¿Qué paso aquí?–> Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0

Después de instalar VS 2010 y por consiguiente el framework 4.0 procedí a crear un servicio en WCF utilizando VS 2008, ya que el proyecto con el que vengo trabajando utiliza esta herramienta y el framework 3.5 para llevar a cabo sus tareas. Luego de crear el servicio, procedo a probarlo desde la consola del IIS 7 y plop!… me aparece el siguiente error en el browser.

image

Después de una búsqueda rápida me di cuenta que el problema esta en los application pools. Cómo se puede ver en la siguiente figura, la mayoría de mis sitios web corren sobre el application pool que esta por defecto en el IIS – DefaultAppPool – ya que normalmente uno no lo cambia hasta que lo va a sacar a producción { sin duda un tema completo para otro post ya que son muchas las ventajas de tener corriendo las aplicaciones en diferentes application pools}.

image

Cuando abrí la configuración del DefaultApplicationPool me di cuenta que este esta utilizando en framework 4.0 para ejecutar el proceso que administra mis sitios web.

image

Por supuesto, al estar creando yo mi aplicación en VS 2008, estoy en realidad utilizando el framework 2.0 y por lo tanto procedi a cambiarlo para que utilizara este framework.

image

y listo, despues de esto el sitio Web volvió a funcionar correctamente. Ahora, la pregunta que surge es ¿qué pasa si tengo que ejecutar aplicaciones en ambos frameworks? Pues bien, cuando se instala el Framework 4, se crean un par de application pools que tienen el framework configurado por defecto los cuales son los que se deben utilizar a la hora de utilizar el IIS. Nótese que existe uno integrado y otro clásico, esta diferencia se da por la forma en que queremos que IIS procese nuestros request, utilizando el esquema tradicional de IIS 6 [no recomendado], o el nuevo esquema de IIS 7+ [MUY RECOMENDADO]

image

A la pregunta de como cambiar el Application Pool de nuestra aplicación Web, se debe de ir a la aplicación web en el sitio web en que este creada, y en la parte derecha darle click a la opcoón Advanced Settings, seguidamente se selecciona la elipsis de Application Pool y se escoje el Application Pool deseado.

image

Technorati Tags: ,

No hay comentarios: