War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
Exportieren (0) Drucken
Alle erweitern

RoleEnvironment.Changing-Ereignis

Letzte Aktualisierung: Dezember 2013

Tritt auf, bevor eine Änderung an der Dienstkonfiguration auf die ausgeführten Instanzen einer Rolle angewendet wird.

Namespace: Microsoft.WindowsAzure.ServiceRuntime
Assembly: Microsoft.WindowsAzure.ServiceRuntime (in Microsoft.WindowsAzure.ServiceRuntime.dll)

public:
static event EventHandler<RoleEnvironmentChangingEventArgs^>^ Changing {
	void add (EventHandler<RoleEnvironmentChangingEventArgs^>^ value);
	void remove (EventHandler<RoleEnvironmentChangingEventArgs^>^ value);
}

Das Changing-Ereignis und das Changed-Ereignis werden zusammen verwendet, um Konfigurationsänderungen am Dienstmodell zu identifizieren und zu verwalten. Durch Verwendung des Changing-Ereignisses hat eine Instanz die folgenden Möglichkeiten, um auf eine Konfigurationsänderung zu reagieren:

  • Akzeptieren der Konfigurationsänderung während der Ausführung, ohne in den Offlinemodus zu wechseln.

  • Festlegen der Cancel-Eigenschaft des RoleEnvironmentChangingEventArgs auf true, um die Instanz offline zu schalten, die Konfigurationsänderung anzuwenden und die Instanz wieder online zu schalten.

Durch Verwendung der Cancel-Eigenschaft können Sie sicherstellen, dass für die Instanz eine ordnungsgemäße Herunterfahrsequenz ausgeführt wird und dass die Instanz vor dem Anwenden der Konfigurationsänderung offline geschaltet wird. Microsoft Azure löst während des Herunterfahrens das Stopping-Ereignis aus und führt dann den Code in der OnStop-Methode aus.

Im folgenden Codebeispiel sehen Sie, wie die Konfigurationsänderungen nach dem Neustart der Rolleninstanzen angewendet werden:


public override bool OnStart()
{
   RoleEnvironment.Changing += RoleEnvironmentChanging;
  
   return base.OnStart();
}

private void RoleEnvironmentChanging(object sender, RoleEnvironmentChangingEventArgs e) 
{
   // Implements the changes after restarting the role instance
   if ((e.Changes.Any(change => change is RoleEnvironmentConfigurationSettingChange))) 
   {
      e.Cancel = true;
   }
}

Dieses Ereignis tritt auf, nachdem die Änderung an Microsoft Azure übermittelt wurde, jedoch bevor die Änderungen auf alle ausgeführten Rolleninstanzen angewendet wurden.


Entwicklungsplattformen

Windows Vista, Windows 7 und Windows Server 2008

Zielplattformen

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2015 Microsoft