Hace un tiempo me pidieron que explicara el ciclo de vida de la página ASP.NET en una entrevista. Se lo expliqué, pero no estaba satisfecho con mi respuesta. ¿Podría alguien explicarme el ciclo de vida por favor?Explicación del ciclo de vida de la página ASP.NET
Respuesta
se puede ver:
The ASP.NET Page Life Cycle (por Salomón Shaffer)
Creo que Microsoft ha hecho el mejor trabajo de esto. Solo resumiría su resumen, sacando las porciones más significativas de cada evento.
recomiendo esta página de MSDN:
respuesta ya se ha escrito por otros. simplemente compartiendo el código de acceso directo para recordar las etapas del ciclo de vida de asp.net que encontré en la siguiente publicación.
R-SIL-VPRU
- Solicitud
- inicio
- inicialización
- carga
- Validación
- segundo palo manejo
- representación
Unload
PreInit:
Puede:
cheque por la propiedad IsPostBack para determinar si esta es la primera vez que se procesa la página. Crear o recrear controles dinámicos. Establezca la página maestra dinámicamente. Establece dinámicamente la propiedad Theme. Lee o establece valores de propiedades de perfil. Si la solicitud es una devolución de datos:
Los valores de los controles aún no se han restaurado del estado de vista. Si establece propiedad de control en esta etapa, su valor podría sobrescribirse en el próximo evento. Init:
En el evento Init de los controles individuales se produce primero, luego tiene lugar el evento Init de la página. Este evento se usa para inicializar propiedades de control. InitComplete:
El seguimiento de ViewState está activado en este caso. Cualquier cambio realizado en ViewState en este evento se conservará incluso después de la próxima devolución de datos. Precargar:
Este evento procesa los datos de devolución de datos que se incluyen con la solicitud. Carga:
En este caso, el objeto de página llama al método OnLoad en el objeto de la página en sí, más tarde se llama al método OnLoad de los controles. Por lo tanto, el evento Carga de los controles individuales se produce después del evento Cargar de la página. ControlEvents:
Este evento se utiliza para controlar eventos de control específicos como un evento Click del control Button o un evento TextChanged del control TextBox. En caso de devolución de datos:
Si la página contiene controles de validador, la propiedad Page.IsValid y la validación de los controles tiene lugar antes del disparo de eventos de control individuales. LoadComplete:
Este evento ocurre después de la etapa de manejo de eventos. Este evento se usa para tareas como cargar todos los demás controles en la página. PreRender:
En este caso, el evento PreRender de la página se llama primero y luego para el control secundario. Uso:
Este método se usa para realizar cambios finales en los controles de la página, como asignar el DataSourceId y llamar al método DataBind. PreRenderComplete:
Este evento se produce después de que se completa la propiedad PreRender de cada control. SaveStateComplete:
Esto se produce después de que el estado de control y la vista se hayan guardado para la página y para todos los controles. RenderComplete:
El objeto de la página llama a este método en cada control que está presente en la página. Este método escribe el marcado del control para enviarlo al navegador. Descargar:
Este evento se plantea para cada control y luego para el objeto Página. Uso:
Usar este evento en los controles para el trabajo final de limpieza, tales como el cierre de conexiones de bases de datos abiertas, cierre los archivos abiertos, etc.
ASP.Net Page life cycle overview
Cuando se ejecuta una página ASP.NET, la la página pasa por un ciclo de vida en el que ir realiza una serie de pasos de procesamiento.Estos incluyen
- inicialización
- controles instanciación de
- Restroring y mantener el estado a
- la ejecución de código gestor de eventos, y
- Rendering
¿Por qué tenemos que aprender ASP.Net página ¿ciclo vital?
Es importante que comprenda el ciclo de vida de la página para que pueda escribir el código en la etapa de ciclo de vida adecuada para el efecto que desea.
Si desarrolla controles personalizados, debe estar familiarizado con el ciclo de vida de la página para inicializar correctamente los controles, completar el código de comportamiento de control. El ciclo de vida de un control se basa en el ciclo de vida de la página, y la página plantea muchos de los eventos que debe manejar en un control personalizado.
generales statges ciclo de vida de la página:
Algunas partes del ciclo de vida sólo se producen cuando una página se procesa como devolución de datos. Para las devoluciones, el ciclo de vida de la página es el mismo durante una devolución de datos parcial (como cuando se usa un control de Panel de actualización) como lo es durante una devolución de datos de página completa.
- página Request
- inicio
- inicialización
- carga
- manejo
- evento de devolución de representación
- Unload
1). Solicitud de página:
La solicitud de página se produce antes de que comience el ciclo de vida de la página. Cuando el usuario solicita la página, ASP.Net determina si la página necesita ser analizada y compilada (por lo tanto, comienza la vida de un pge), o si una versión en caché de la página puede enviarse en respuesta sin ejecutar la página.
Read complete article on "ASP.Net Page life cycle overview" here.
Partial Class _Default
Inherits System.Web.UI.Page
Dim str As String
Protected Sub Page_Disposed(sender As Object, e As System.EventArgs) Handles Me.Disposed
str += "PAGE DISPOSED" & "<br />"
End Sub
Protected Sub Page_Error(sender As Object, e As System.EventArgs) Handles Me.Error
str += "PAGE ERROR " & "<br />"
End Sub
Protected Sub Page_Init(sender As Object, e As System.EventArgs) Handles Me.Init
str += "PAGE INIT " & "<br />"
End Sub
Protected Sub Page_InitComplete(sender As Object, e As System.EventArgs) Handles Me.InitComplete
str += "INIT Complte " & "<br />"
End Sub
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
str += "PAGE LOAD " & "<br />"
End Sub
Protected Sub Page_LoadComplete(sender As Object, e As System.EventArgs) Handles Me.LoadComplete
str += "PAGE LOAD Complete " & "<br />"
End Sub
Protected Sub Page_PreInit(sender As Object, e As System.EventArgs) Handles Me.PreInit
str = ""
str += "PAGE PRE INIT" & "<br />"
End Sub
Protected Sub Page_PreLoad(sender As Object, e As System.EventArgs) Handles Me.PreLoad
str += "PAGE PRE LOAD " & "<br />"
End Sub
Protected Sub Page_PreRender(sender As Object, e As System.EventArgs) Handles Me.PreRender
str += "PAGE PRE RENDER " & "<br />"
End Sub
Protected Sub Page_PreRenderComplete(sender As Object, e As System.EventArgs) Handles Me.PreRenderComplete
str += "PAGE PRE RENDER COMPLETE " & "<br />"
End Sub
Protected Sub Page_SaveStateComplete(sender As Object, e As System.EventArgs) Handles Me.SaveStateComplete
str += "PAGE SAVE STATE COMPLTE " & "<br />"
lbl.Text = str
End Sub
Protected Sub Page_Unload(sender As Object, e As System.EventArgs) Handles Me.Unload
'Response.Write("PAGE UN LOAD\n")
End Sub
End Class
Hay 10 eventos en ASP.NET ciclo de vida de la página y la secuencia es: - Init, vista Carga estado, PostBackdata, carga, Validar, Evento, pre-render, Guardar ver estado, renderizar y descargar.
A continuación se muestra una vista gráfica del ciclo de vida de la página ASP.NET con qué tipo de código se espera en ese caso. Le sugiero que lea este artículo en ASP.NET Page life cycle, que explica los 10 eventos en detalle y cuándo usarlos.
- 1. ASP.Net ciclo de vida de la página
- 2. Asp.net página variable global específica del ciclo de vida?
- 3. Ciclo de vida de la página Razor en ASP.NET MVC
- 4. Ciclo de vida del controlador ASP.NET MVC
- 5. En ASP.Net, durante qué evento del ciclo de vida de la página se carga ViewState?
- 6. Ciclo de vida del evento WinForms
- 7. ciclo de vida de la página en javascript
- 8. Ciclo de vida del controlador de rieles
- 9. ViewState Vs Session ... mantenimiento del objeto a través del ciclo de vida de la página
- 10. Ciclo de vida del objeto en NHibernate
- 11. ¿Cuál es el ciclo de vida de la solicitud del servicio web ASP.NET?
- 12. JUnit ciclo de vida
- 13. Prueba del ciclo de vida de la actividad de Android
- 14. Ciclo de vida de solicitud de ASP.Net - Application_BeginRequest
- 15. Ciclo de vida de la tarea
- 16. Ciclo de vida del objeto de la aplicación Android
- 17. ¿Continúa el ciclo de vida de asp.net si cierro el navegador en el medio del proceso?
- 18. Cómo determinar la vida del dominio de aplicación ASP.NET
- 19. Alcance de Structuremap/Guía del ciclo de vida?
- 20. pregunta del ciclo de vida del paquete osgi
- 21. fragmento extraño error de ciclo de vida
- 22. Averigüe en qué etapa del ciclo de vida está un control en ASP.NET WebForms
- 23. Ciclo de vida de SharedPreference de Android
- 24. ¿Cuándo es el primero en que puedo acceder a SESSION en el ciclo de vida de la página ASP.NET MVC?
- 25. Servicios de Android: consideraciones del ciclo de vida
- 26. Ciclo de vida de objetos estáticos Android
- 27. JUnit @Rule interacción del ciclo de vida con @Antes de
- 28. Cómo excluir una fase del ciclo de vida de Maven
- 29. asp.net: ¿cuál es el orden del ciclo de vida de la página de un control/página en comparación con un contorl de usuario dentro de él?
- 30. Modelos de ciclo de vida del software para desarrollo web
Nice visual. Puedo mostrar esto a la gerencia para ayudarlos a entender lo que estoy tratando de explicar sobre viajes múltiples a la base de datos debido al código de spaghetti. – JoshYates1980