Quiero poder ejecutar un script cada vez que se cargue CUALQUIER página en la aplicación. ¿Hay algún lugar en el que simplemente pueda agregar esto? ¿O debo agregar el código en cada carga de página?¿Hay una función llamada en cualquier momento CUALQUIER página cargada en su aplicación?
Respuesta
Puede hacer una de tres cosas:
Utilice un base page en su aplicación, y tienen todas las páginas de la aplicación heredan de ella. En el evento page_load en la página base, haz lo que tienes que hacer. Asegúrese de que las páginas heredadas en su aplicación llamen al evento page_load de la página base si son override page_load (generalmente lo hacen). Y debido a que page_load está sobreutilizado, daré los consejos relacionados para mirar all the page events (especialmente especialmente page_prerender) en caso de que otro sea más apropiado.
Utilice los eventos que disparan en la página global.asax, que suceden cada vez que se recibe una petición. Mira el evento Application_BeginRequest. Pero hay un montón de eventos allí, así que check them all out en caso de que otro evento sea más aplicable a su situación. (Al igual que los eventos de página regulares, no se interponen en el mal hábito de usar siempre el mismo evento.)
Hay una posibilidad de que lo que queremos que suceda cada vez que debe ir en una master page, especialmente si está relacionado con el diseño Las páginas maestras parecen cursi, pero se han demostrado en buenos diseños. Si utiliza el evento page_load de una página maestra para la funcionalidad común, no tiene que llamarlo desde la página_load de cada página de contenido; dispara cada vez el evento page_load de after the called-page. (Menciono esto porque es fácil confundir las páginas maestras y las páginas de base al principio.)
+1 Forma de cubrir todas las bases –
Terminé usando la página maestra porque pertenecía a ella. Pero estaba buscando en el archivo.asax global antes de preguntar. Sin embargo, no pude encontrarlo. Un millón de gracias. – Hazior
Sí, esto nos sucede a cada uno de nosotros. ¡¿¡Dónde está!?! Aunque es un archivo especial que VS conoce, no está allí por defecto. Una aplicación .net no * necesita * un archivo.asax global. En 2008, vaya a Archivo, Nuevo archivo y seleccione la ** clase de aplicación global **. En 2005, creo que haces Archivo, Nuevo, Archivo, luego lo seleccionas. –
se podría crear una clase base común para sus páginas, desciendo de System.Web.UI.Page y añadir el código de un controlador OnLoad allí.
Puede utilizar el evento BeginRequest en el archivo Global.asax
.
http://msdn.microsoft.com/en-us/library/system.web.httpapplication.beginrequest.aspx
Puede utilizar PageAdapters para inyectar código en cada solicitud de página aspx mediante la interceptación de cualquier método de ASP.Net Página ciclo de vida.
Este artículo puede ayudarle a entender su funcionamiento: http://dotnet.org.za/hiltong/archive/2008/01/06/injecting-a-page-base-class-in-asp-net.aspx
Saludos.
También podría crear y registrar un HTTP Module. La ventaja de esto es que están registrados en web.config, por lo que puede agregarlos y eliminarlos en tiempo de ejecución si lo desea ... y tiene más de uno.
- 1. regex.test() solo funciona en cualquier otro momento
- 2. ventana emergente en cualquier aplicación
- 3. ¿Podemos insertar javascript en cualquier página web cargada en el navegador?
- 4. ¿Puede cualquier función ser una función eliminada?
- 5. ¿Cómo ejecutar jQuery directamente en cualquier página del navegador?
- 6. WPF: cómo expandir solo un expansor en cualquier momento
- 7. Carga JQuery en cualquier página usando Firebug
- 8. ¿Puedo cambiar mi aplicación de gratis a pago o de pago a gratis en cualquier momento?
- 9. Cómo atrapar cualquier llamada de método en objeto en PHP?
- 10. ¿Necesitas engancharte en una llamada a función de JavaScript, de cualquier forma para hacer esto?
- 11. Redirige cualquier subdominio a una página en el dominio principal
- 12. ¿Hay un validador de HTML incorporado en cualquier navegador importante?
- 13. ¿Hay una función de Matlab para convertir cualquier estructura de datos en una cadena?
- 14. ¿Cómo puedo extraer cualquier clase por su cid en Backbone?
- 15. Descargar un archivo de Internet mientras se puede cancelar la descarga en cualquier momento
- 16. .Net 3.5 Dll en una aplicación .Net 4.0 cualquier problema
- 17. Uso de datos desde cualquier aplicación
- 18. "Interceptar" la apertura de cualquier tooltip en toda la aplicación
- 19. ¿Abrir cualquier archivo en una nota?
- 20. ¿Cómo encontrar/detectar cualquier área de texto en la página usando jQuery?
- 21. Cualquier implementación de conjunto ordenado en Java?
- 22. Cómo vincular cualquier biblioteca en la aplicación ndk
- 23. Evite cualquier forma de actualización de página utilizando jQuery/Javascript
- 24. Netsuite males: ¿Hay referencias decentes en cualquier lugar?
- 25. No se puede iniciar cualquier aplicación Django
- 26. Visualizando una vista modal desde cualquier lugar en el código
- 27. Capturar una tecla Intro presionada en cualquier lugar de la página
- 28. Cómo deshabilitar cualquier evento en una vista en Android?
- 29. ¿Hay alguna forma común de verificar en Python si un objeto es cualquier tipo de función?
- 30. Cómo convertir cualquier cosa en una cadena segura en JavaScript
No olvide, sin embargo, que si utiliza AJAX, puede haber solicitudes de cosas que no son una página, solo como algo a tener en cuenta. –