Compartir vía


Introducción al control de excepciones

La API de almacenamiento en caché de Microsoft AppFabric 1.1 para Windows Server lanza excepciones .NET cuando se produce un error. En este tema se revisan los conceptos básicos del tratamiento de los errores y se proporciona un ejemplo.

La clase DataCacheException

Un objeto DataCacheException común se lanza para los errores específicos de los métodos de Almacenamiento en caché de AppFabric. El objeto DataCacheException contiene cuatro propiedades que pueden ayudar a diagnosticar la causa de la excepción:

Propiedad DataCacheException Descripción

Message

Cadena que describe el error.

ErrorCode

Valor entero que se corresponde con una constante de código de error en la clase DataCacheErrorCode.

SubStatus

Valor entero que se corresponde con una constante de subestado en la clase DataCacheErrorSubStatus.

InnerException

Instancia de excepción que ha causado la excepción actual. Este valor puede ser nulo.

Pueden producirse algunos errores, como un tiempo de espera, desde cualquier método de cliente de caché. El código de la aplicación debe estar preparado para tratar estas excepciones habituales. Para obtener más información, vea Excepciones comunes.

Nota

Algunos errores no lanzan ninguna excepción. Por ejemplo, el método Get devuelve un valor nulo si no se encuentra la clave. Otros métodos pueden devolver valores booleanos que indican éxito o error. Para obtener más información sobre métodos específicos, vea el espacio de nombres Microsoft.ApplicationServer.Caching, en la documentación de la biblioteca de clases de Microsoft AppFabric 1.1 para Windows Server.

Ejemplo

El ejemplo siguiente intenta poner un objeto de cadena denominado strObject en un DataCache denominado myCache. El método sobrecargado Put se usa para especificar una región de caché para el objeto. Si la región todavía no existe en la memoria caché, se lanza un objeto DataCacheException con un código de error RegionDoesNotExist. En este ejemplo, el error se soluciona creando la región y reintentando la operación de colocación.

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");
   }
}

Vea también

Conceptos

Excepciones comunes
Configuración de tiempos de espera de clientes de caché

  2012-03-05