¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
Usar el evento RoleEnvironment.Changing

Usar el evento RoleEnvironment.Changing

Actualizado: octubre de 2014

El evento Changing le permite administrar la forma en la que una instancia de rol responde a un cambio de configuración. Con el evento Changing, una instancia puede responder a un cambio de configuración de una de las siguientes maneras:

  • La instancia puede aceptar el cambio de configuración mientras se está ejecutando, sin quedarse sin conexión.

  • La instancia puede cancelar el evento Changing, en cuyo caso Azure deja a la instancia sin conexión, aplica el cambio de configuración y, después, vuelve a poner la instancia en línea.

Al cancelar el evento Changing, se garantiza que la instancia sigue una secuencia de cierre por orden y se la deja sin conexión antes de que se aplique el cambio de configuración. Durante el proceso de cierre, Azure provoca el evento Stopping y ejecuta cualquier código del método OnStop.

noteNota
Dispone de tiempo limitado para aceptar o cancelar el evento Changing. Asegúrese de que el controlador de eventos puede hacer las devoluciones de forma puntual.

Sería recomendable cancelar el evento Changing si:

  • La instancia de rol no admite cambios de configuración mientras se está ejecutando y requiere un reciclaje para aplicar el cambio.

  • La instancia de rol realiza un trabajo que no se puede interrumpir por un cambio de configuración y debe continuar con la secuencia de cierre antes de aplicar el cambio.

La clase RoleEnvironmentChangingEventArgs proporciona una propiedad Changes la cual devuelve una colección de los cambios de configuración que están a punto de aplicarse a la instancia. Los objetos en esta colección pueden ser de uno de estos tipos:

  • La clase RoleEnvironmentConfigurationSettingChange representa un cambio en el valor de una opción de configuración. La propiedad ConfigurationSettingName devuelve el nombre de la opción de configuración que se está cambiando.

  • La clase RoleEnvironmentTopologyChange representa un cambio en la topología del servicio. Los cambios que se pueden hacer en la topología son la adición o eliminación de las instancias de un rol. La propiedad RoleName devuelve el nombre del rol cuyo número de instancias se está cambiando.

noteNota
Puede ver el nombre de la opción de configuración que va a cambiar, pero no puede tener acceso al nuevo valor hasta que se produzca el evento Changed.

  1. Abra el archivo de origen donde esté administrando los cambios de configuración.

  2. Asegúrese de que el proyecto haga referencia al archivo Microsoft.WindowsAzure.ServiceRuntime.dll y de agregar la instrucción "using" siguiente al archivo:

    using Microsoft.WindowsAzure.ServiceRuntime;
    
  3. Agregue el código siguiente al método OnStart para especificar el controlador de eventos:

    
    public override bool OnStart()
    {
       RoleEnvironment.Changing += RoleEnvironmentChanging;
                
       return base.OnStart();
    }
    
  4. Agregue el método del controlador de eventos siguiente al archivo de origen:

    
    private void RoleEnvironmentChanging(object sender, RoleEnvironmentChangingEventArgs e)
    {
       // Add code for handling changes
    }
    
  5. Guarde el archivo.

Vea también

Mostrar:
© 2015 Microsoft