Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El servidor carga una pagina ASP.NET cada vez que se solicita y luego la descarga una vez completada la solicitud. La página y los controles de servidor que ésta contiene se encargan de ejecutar la solicitud y de devolver HTML al cliente. Aunque la comunicación entre el cliente y el servidor carece de información de estado y sin conexión, para el cliente debe parecer un proceso en constante ejecución.
Esta sensación de continuidad la genera el marco de trabajo de páginas ASP.NET, así como la página y sus controles. Al devolver los datos, los controles deben comportarse como si empezaran dónde lo dejaron al final de la solicitud Web anterior. El marco de trabajo de páginas ASP.NET facilita bastante la administración de estados, aunque los programadores de controles deben conocer la secuencia de ejecución de control para lograr el efecto de continuidad. Los programadores de controles deben conocer qué datos hay disponibles para un control en cada fase de su ciclo de vida, qué datos se almacenan y cuál es el estado del control cuando se procesa. Por ejemplo, un control no puede invocar al control principal correspondiente hasta que no se haya rellenado el árbol de controles de una página.
En la siguiente tabla se ofrece información detallada de las fases del ciclo vital de un control. Para obtener más información, vea los vínculos de la tabla.
| Fase | Lo que tiene que hacer un control | Método o evento que se va a reemplazar |
|---|---|---|
| Inicializar | Inicializar la configuración necesaria durante la vida de una solicitud Web entrante. Vea Controlar eventos heredados. | Evento Init (método OnInit) |
| Cargar estado de vista | Al final de esta fase, la propiedad ViewState de un control se rellena automáticamente como se describen en Mantener el estado de un control. Un control puede reemplazar la implementación predeterminada del método LoadViewState para personalizar la restauración del estado. | Método LoadViewState |
| Procesar datos de devolución | Procesar los datos de formulario entrantes y actualizar las propiedades según corresponda. Vea Procesar datos de devolución
Nota En esta fase sólo intervienen los controles que procesan los datos de devolución. |
Método LoadPostData
(Si se implementa IPostBackDataHandler) |
| Cargar | Realizar acciones comunes a todas las solicitudes, como configurar una consulta de base de datos. En esta fase, se crean e inicializan los controles de servidor del árbol, se restaura el estado y los controles del formulario reflejan los datos del cliente. Vea Controlar eventos heredados. | Evento Load
(Método OnLoad) |
| Enviar notificaciones de cambio de devolución | Provocar eventos de modificación en respuesta a cambios de estado entre las devoluciones actual y anterior. Vea Procesar datos de devolución
Nota En esta fase sólo intervienen los controles que provocan eventos de cambios de devolución. |
Método RaisePostDataChangedEvent
(Si se implementa IPostBackDataHandler) |
| Controlar eventos de devolución | Controlar el evento del cliente, que produjo la devolución y provocar los eventos correspondientes en el servidor. Vea Capturar eventos Postback
Nota En esta fase sólo intervienen los controles que procesan eventos de devolución. |
Método RaisePostBackEvent
(Si se implementa IPostBackEventHandler) |
| Preprocesar | Realiza las actualizaciones oportunas antes de procesar los resultados. Los cambios realizados al estado del control en la fase de preprocesamiento se pueden guardar, mientras que los realizados en la fase de procesamiento se pierden. Vea Controlar eventos heredados. | Evento PreRender
(Método OnPreRender) |
| Guardar estado | La propiedad ViewState de un control se almacena automáticamente en un objeto String después de esta fase. Este objeto String se envía al cliente y se devuelve como una variable oculta. Para mejorar la eficiencia, un control puede reemplazar el método SaveViewState para modificar la propiedad ViewState. Vea Mantener el estado en un control | Método SaveViewState |
| Procesar | Genera resultados que se enviarán al cliente. Vea Procesar un control de servidor ASP.NET | Método Render |
| Desechar | Realizar todas las operaciones finales de limpieza antes que el control deje de utilizarse. Las referencias a los recursos caros, como las conexiones de bases de datos, deben liberarse en esta fase. Vea Métodos de los controles de servidor ASP.NET | Método Dispose |
| Descargar | Realizar todas las operaciones finales de limpieza antes que el control deje de utilizarse. Los programadores de controles normalmente realizan las operaciones de limpieza en Dispose y no controlan este evento. | Evento UnLoad (Método On UnLoad) |
**Nota ** Para reemplazar un evento EventName, reemplace el método OnEventName (y llame a OnEventName base).
Los métodos y eventos de la tercera columna se heredan de System.Web.UI.Control, con las siguientes excepciones: LoadPostData y RaisePostDataChangedEvent son métodos de la interfaz IPostBackDataHandler, y RaisePostBackEvent pertenece a la interfaz IPostBackEventHandler. Si el control interviene en el procesamiento de datos de devolución, se deberá implementar IPostBackDataHandler. Si el control recibe eventos de devolución, se deberá implementar IPostBackEventHandler.
El método CreateChildControls no aparece en la tabla ya que se llama cuando el marco de trabajo de páginas ASP.NET necesita crear el árbol de controles y esta llamada de método no se limita a una fase concreta de un ciclo vital del control. Por ejemplo, CreateChildControls se puede invocar al cargar una página, durante el enlace de datos o durante el procesamiento.
Vea también
Capturar eventos Postback | Procesar datos de devolución | Controlar eventos heredados | Mantener el estado en un control