18 votos

¿Es posible depurar Global.asax?

Yo no puedo depurar archivo global.asax.

Tengo algunos códigos en Application_Start() método pero cuando puse un breakpoint en el método, es ignorado.

¿Es esto normal?

39voto

Patrick Scott Puntos 1530

Una forma sencilla en Application_Start() es utilizar la clase System.Diagnostics.Debugger y obligarla a romper.

    void Application_Start(object sender, EventArgs e) 
    {
          System.Diagnostics.Debugger.Break();
              // CODE
    }

11voto

John Kelly Puntos 111
  1. Asociar al depurador al proceso de IIS.
  2. Abra el archivo global.asax y poner en un breakpoint.
  3. Agregar un espacio en el archivo web.config y guarde el archivo (esto hace que la aplicación web actual reajustar);
  4. Actualizar / goto una web page en el sitio.
  5. mirar en asombro cuando el depurador se detiene en el breakpoint. :)

6voto

Juliet Puntos 40758

Application_Start() se invoca una vez por dominio de aplicación. Si no estás golpeando a su punto de ruptura, que significa el dominio de aplicación que ya fue creado, así que hacer lo siguiente:

  • En su lanzamiento rápido de la barra, hay un icono para la VS servidor web (la que dice "Host Local Algún Puerto"). Haga clic derecho y seleccione "Detener" o "Cerrar". Esto debería eliminar el dominio de aplicación.
    • Si usted está utilizando IIS, debe reiniciar su sitio manualmente.
    • Alternativamente, la modificación de la configuración web o Global.archivo asax es generalmente suficiente para reiniciar el dominio de aplicación.
  • Reinicie su depuración, usted debe golpear sus breakpoints de ahora.

6voto

terR0Q Puntos 1004

Compruebe que la aplicación web está en modo de depuración (<compilation debug="true"> en la web.config).

Si usted está utilizando el desarrollador del IIS iniciado por VS, acaba de reiniciar o volver a generar la aplicación.

Si estás en normal IIS usted tiene dos opciones:

  1. Para el sitio web está configurado para trabajar con el desarrollo de la carpeta (donde VS web del proyecto es implementado) sólo tiene que reiniciar la aplicación piscina para que el sitio web y empezar a depurar antes de la primera solicitud llega servidor (siempre se puede reiniciar la aplicación de la piscina durante la depuración).
  2. Para el sitio web que funciona en otra carpeta o incluso en el servidor remoto debe adjuntar al proceso. Para hacer esto usted necesita depurador remoto instalado en el equipo remoto o en su propio (depende de la web-ubicación del servidor) y el uso de Debug - Attach to process menú, introduzca el nombre del equipo y, a continuación, seleccione un proceso de depuración. Generalmente es un w3wp.exe trabajando en modo gestionado tipo.

5voto

user224564 Puntos 663

Sí, es normal.

Application_Start()es procesado por el IIS.

Pero todos los demás métodos, por ejemplo Session_Start y todos los demás, excepto Application_Start() puede depurar normalmente.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by: