Ausnahmebehandlung – Übersicht (Windows Server AppFabric-Cache)

Die Cache-API von Windows Server AppFabric löst bei Fehlern .NET-Ausnahmen aus. In diesem Thema werden grundlegende Konzepte zur Fehlerbehandlung erläutert, außerdem enthält es ein Beispiel.

Die Klasse „DataCacheException“

Ein allgemeines DataCacheException-Objekt wird für Fehler ausgelöst, die für die AppFabric-Cachemethoden spezifisch sind. Das DataCacheException-Objekt enthält vier Eigenschaften, die Sie bei der Diagnose der Ursache einer Ausnahme unterstützen können:

Eigenschaft DataCacheException Beschreibung

Message

Eine Zeichenfolge, die sen Fehler beschreibt.

ErrorCode

Ein ganzzahliger Wert, der einer Fehlercodekonstante in der Klasse DataCacheErrorCode entspricht.

SubStatus

Ein ganzzahliger Wert, der einer Unterstatuskonstante in der Klasse DataCacheErrorSubStatus entspricht.

InnerException

Eine Ausnahmeinstanz, die die aktuelle Ausnahme verursacht hat. Dieser Wert kann null sein.

Einige Fehler, z. B. ein Timeout, können aus jeder Cacheclientmethode entstehen. Ihr Anwendungscode sollte für die Behandlung dieser allgemeinen Ausnahmen vorbereitet sein. Weitere Informationen finden Sie unter Häufige Ausnahmen (Windows Server AppFabric-Cache).

Hinweis

Einige Fehler lösen keine Ausnahmen aus. Die Methode Get gibt z. B. einen Nullwert zurück, wenn der Schlüssel nicht gefunden wurde. Andere Methoden können Wahrheitswerte zurückgeben, um Erfolg oder Fehler anzuzeigen. Weitere Informationen zu bestimmten Methoden finden Sie in den Themen zum Microsoft.ApplicationServer.Caching-Namespace in der Windows Server AppFabric-Klassenbibliothekdokumentation.

Beispiel

Das folgende Beispiel versucht, ein Zeichenfolgeobjekt namens strObject in einem DataCache namens myCache zu speichern. Die überladene Methode Put wird zum Angeben eines Cachebereichs für das Objekt verwendet. Wenn dieser Bereich noch nicht im Cache vorhanden ist, wird ein DataCacheException-Objekt mit dem Fehlercode RegionDoesNotExist ausgelöst. In diesem Beispiel wird dieser Fehler durch Erstellen des Bereichs und Wiederholen des Put-Vorgangs behandelt.

Dim strKey As String = "key0"
Dim strObject As String = "Source String"

Try
   ' Put a string object into the cache region, "Region1"
   myCache.Put(strKey, strObject, "Region1")

Catch cacheError As DataCacheException
   ' Look at the ErrorCode property to see if the Region is missing
   If (cacheError.ErrorCode = DataCacheErrorCode.RegionDoesNotExist) Then

      ' Create the Region and retry the Put call
      myCache.CreateRegion("Region1")
      myCache.Put(strKey, strObject, "Region1")
   End If
End Try
string strKey = "key0";
string strObject = "Source String";

try
{
   // Put a string object into the cache region, "Region1"
   myCache.Put(strKey, strObject, "Region1");
}
catch (DataCacheException cacheError)
{
   // Look at the ErrorCode property to see if the Region is missing
   if (cacheError.ErrorCode == DataCacheErrorCode.RegionDoesNotExist)
   {
      // Create the Region and retry the Put call
      myCache.CreateRegion("Region1");
      myCache.Put(strKey, strObject, "Region1");
   }
}

Siehe auch

Konzepte

Häufige Ausnahmen (Windows Server AppFabric-Cache)
Konfigurieren von Cacheclienttimeouts (Windows Server AppFabric-Cache)

  2011-12-05