¿Cómo podemos usar global.asax en asp.net? ¿Y qué es eso?¿Cuál es el propósito de global.asax en asp.net
Respuesta
MSDN has an outline de la finalidad del fichero global.asax.
Efectivamente, global.asax le permite escribir código que se ejecuta en respuesta a eventos de "nivel de sistema", como el inicio de la aplicación, una sesión que termina, un error de aplicación, sin tener que probar y codificar ese código en todas y cada una de las páginas de su sitio.
Puede utilizarlo seleccionando Agregar> Nuevo elemento> Clase de aplicación global en Visual Studio. Una vez que haya añadido el archivo, puede agregar el código en cualquiera de los eventos que se muestran (y crean de forma predeterminada, por lo menos en Visual Studio 2008):
- Application_Start
- Application_End
- Session_Start
- Session_End
- Application_BeginRequest
- Application_AuthenticateRequest
- Application_Error
Hay otros eventos que también puede enganchar, como "LogRequest".
Global.asax se puede usar para manejar eventos que surjan de la aplicación. Este enlace proporciona una buena explicación: http://aspalliance.com/1114
The Global.asax file, also known as the ASP.NET application file, is an optional file that contains code for responding to application-level and session-level events raised by ASP.NET or by HTTP modules.
Global.asax es el archivo de la aplicación asp.net.
Es un archivo opcional que maneja eventos creados por ASP.NET o por HttpModules. Se utiliza principalmente para aplicaciones y eventos de inicio/final de sesión y para el manejo global de errores.
Cuando se utiliza, debe estar en la raíz del sitio web.
Eventos globales asax explican
Application_Init: Se activa cuando una aplicación inicializa o se llama en primer lugar. Se invoca para todas las instancias de objetos HttpApplication.
Application_Disposed: Encendido justo antes de que se destruya una aplicación. Esta es la ubicación ideal para limpiar los recursos utilizados anteriormente.
Error de aplicación: Se activa cuando se encuentra una excepción no controlada dentro de la aplicación.
Application_Start: Se activa cuando se crea la primera instancia de la clase HttpApplication. Le permite crear objetos a los que pueden acceder todas las instancias de HttpApplication.
Application_End: Se activa cuando se destruye la última instancia de una clase HttpApplication. Se dispara solo una vez durante la vida de una aplicación.
Application_BeginRequest: Se activa cuando se recibe una solicitud de aplicación. Es el primer evento disparado para una solicitud, que a menudo es una solicitud de página (URL) que ingresa un usuario.
Application_EndRequest: El último evento desencadenado para una solicitud de aplicación.
Application_PreRequestHandlerExecute: Encendido antes de que el marco de páginas de ASP.NET comience a ejecutar un controlador de eventos como una página o un servicio web.
Application_PostRequestHandlerExecute: Se activa cuando el marco de la página ASP.NET termina de ejecutar un controlador de eventos.
Applcation_PreSendRequestHeaders: Disparado antes de que el marco de la página ASP.NET envíe encabezados HTTP a un cliente solicitante (navegador).
Application_PreSendContent: Encendido antes de que el marco de páginas de ASP.NET envíe contenido a un cliente solicitante (navegador).
Application_AcquireRequestState: Se activa cuando el marco de página ASP.NET obtiene el estado actual (estado de sesión) relacionado con la solicitud actual.
Application_ReleaseRequestState: Se activa cuando el marco de página ASP.NET completa la ejecución de todos los controladores de eventos. Esto da como resultado que todos los módulos de estado guarden sus datos de estado actuales.
Application_ResolveRequestCache: Se activa cuando el marco de página de ASP.NET completa una solicitud de autorización. Permite que los módulos de almacenamiento en caché atiendan la solicitud desde el caché, evitando así la ejecución del manejador.
Application_UpdateRequestCache: activa cuando el marco de páginas ASP.NET completa ejecución del gestor de almacenamiento en caché para permitir que los módulos para almacenar las respuestas que se utilizará para manejar las solicitudes posteriores.
Application_AuthenticateRequest: Se activa cuando el módulo de seguridad ha establecido la identidad del usuario actual como válida. En este punto, las credenciales del usuario han sido validadas.
Application_AuthorizeRequest: Se activa cuando el módulo de seguridad ha verificado que un usuario puede acceder a los recursos.
Session_Start: Se activa cuando un nuevo usuario visita el sitio web de la aplicación.
Session_End: Se activa cuando la sesión de un usuario expira, finaliza o abandona el sitio web de la aplicación.
El directorio raíz de una aplicación web tiene un significado especial y cierto contenido puede estar presente en esa carpeta. Puede tener un archivo especial llamado "Global.asax". El framework ASP.Net usa el contenido en el archivo global.asax y crea una clase en el tiempo de ejecución que se hereda de HttpApplication. Durante la vida útil de una aplicación, ASP.NET mantiene un conjunto de instancias HttpApplication derivadas de Global.asax. Cuando una aplicación recibe una solicitud http, el marco de página ASP.Net asigna una de estas instancias para procesar esa solicitud . Esa instancia es responsable de administrar toda la vida útil de la solicitud a la que está asignada y la instancia solo puede reutilizarse después de que la solicitud se haya completado cuando se devuelve al grupo. Los miembros de la instancia en Global.asax no se pueden usar para compartir datos entre las solicitudes, pero puede ser un miembro estático. Global.asax puede contener los controladores de eventos del objeto HttpApplication y algunos otros métodos importantes que ejecutarían en varios puntos en una aplicación web
- 1. ¿Cuál es el propósito de precompiledApp.config?
- 2. ¿Cuál es el propósito de :: en C#?
- 3. sesión de ASP.NET en Global.asax
- 4. ¿Cuál es el propósito de config.assets.precompile?
- 5. ¿Cuál es el propósito de 'Class.forName ("MY_JDBC_DRIVER")'?
- 6. WPF: ¿Cuál es el propósito de App.xaml?
- 7. ¿Cuál es el propósito de 'var'?
- 8. ¿Cuál es el propósito de `qt_noop`
- 9. ¿Cuál es el propósito de String.IsInterned?
- 10. ¿Cuál es el propósito de Rake?
- 11. ¿Cuál es el propósito de Function.const?
- 12. ¿Cuál es el propósito de layout.xml?
- 13. ¿Cuál es el propósito de requestWindowFeature()?
- 14. ¿Cuál es el propósito de IntentSender?
- 15. ¿Cuál es el propósito de utilizar NSOrderedSame?
- 16. ¿Cuál es el propósito de Mage_Core_Block_Template_Facade
- 17. ¿Cuál es el propósito de Membership.ValidateUser()
- 18. ¿Cuál es el propósito de Anorm's Pk?
- 19. ¿Cuál es el propósito de Active Records?
- 20. ¿Cuál es el propósito de 'n = n'?
- 21. ¿cuál es el propósito de glClear (GL_DEPTH_BUFFER_BIT)
- 22. ¿Cuál es el propósito de git-mv?
- 23. ¿Cuál es el propósito de __cxa_pure_virtual?
- 24. ¿Cuál es el propósito de JNDI
- 25. ¿Cuál es el propósito de Ext.require
- 26. ¿Cuál es el propósito de Array.GetLowerBound (int)?
- 27. ¿cuál es el propósito de Thread.holdsLock (lock)?
- 28. Asp.net System.Web.HttpContext.Current.Session null en global.asax
- 29. ¿Cuál es el propósito de glNormal3f en OpenGL ES?
- 30. ASP.NET global.asax uso
La entrada para global.asax ha sido eliminada de Wikipedia. –
@CathySullivan, actualizado, gracias! :) – Rob
¿Podemos agregar el archivo global.asax para el formulario de Windows? –