visual studio responde reinicia puede instalacion inicia esta ejecutar curso cuelga code c# asp.net visual-studio httpmodule cassini

c# - responde - HttpModule no se ejecuta con Visual Studio



visual studio no responde (3)

¿Intentaste también poner la declaración del módulo en el elemento? Cuando se ejecuta en dev usando Cassini, ese suele ser el lugar donde tengo que colocar los módulos para que funcionen.

Estoy usando un HttpModule para hacer un acortamiento de URL en mi sitio. Estoy usando Visual Studio 2008 e IIS 7, y .Net 3.5.

Cuando el módulo se especifica en el elemento system.webServer de web.config, y el sitio se ejecuta en IIS, funciona bien. La configuración se ve así:

<system.webServer> <modules> <add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" /> </modules>...

Mi módulo se adjunta al evento BeginRequest, todo funciona. Sin embargo, no puedo hacer que se ejecute utilizando el servidor web VS integrado (Cassini). Intenté mover la configuración del módulo al elemento system.web en web.config, sin suerte. Le puse un punto de ruptura, no pasa nada.

¿Alguna idea sobre por qué esto sería un problema?

(También probé el evento Application_BeginRequest en global.asax. Todavía no tengo suerte, aunque prefiero mantener todo en web.config de todos modos).


Cassini, el servidor web de desarrollo provisto con IIS, utiliza la sintaxis del módulo IIS6, por lo que debe duplicar el módulo agregar así.

<system.web> <httpModules> <add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" /> </httpModules> </system.web> <system.webServer> <validation validateIntegratedModeConfiguration="false"/> <modules> <remove name="MinimizeModule" /> <add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" preCondition="managedHandler" /> </modules> </system.webServer>

Tenga en cuenta que también he agregado una condición previa a la configuración de IIS7


Si está ejecutando en IIS 7, ponga el módulo en:

<configuration> <system.webServer> <modules> <add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" /> </modules> </system.webServer> </configuration>

Si está ejecutando en Cassini (servidor web en miniatura integrado de Visual Studio), coloque el módulo en:

<configuration> <system.web> <httpModules> <add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" /> </system.web> </configuration>

IIS se bloqueará si le das la ubicación de Cassini.
Cassini se bloqueará si le das la ubicación de IIS.

Cada vez que implemento, debo estar seguro de no implementar web.config . También incluyo las notas en web.config :

<system.web> <!--The Cassini location to add modules (comment out for IIS)--> <httpModules> <!--WARNING: IIS will crash if you leave this in here. IISBUG: IIS doesn''t support system.web/httpModules, and Cassini doesn''t support system.webServer/modules --> <!--Comment out for IIS--> <add name="PerformanceHttpModule" type="DummyPlaceholder.PerformanceHttpModule"/> </httpModules> </system.web> <system.webServer> <!--The IIS7 location to add modules (comment out for Cassini) <modules runAllManagedModulesForAllRequests="true"> <!--IIS7 will crash if you present a system.web httpModules. --> <remove name="PerformanceHttpModule" /> <add name="PerformanceHttpModule" type="DummyPlaceholder.PerformanceHttpModule"/> </modules> </system.webServer>

La mano izquierda de IIS no sabe lo que hace la mano derecha de Cassini, y ambas la arruinaron.