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 |
---|---|
Cadena que describe el error. |
|
Valor entero que se corresponde con una constante de código de error en la clase DataCacheErrorCode. |
|
Valor entero que se corresponde con una constante de subestado en la clase DataCacheErrorSubStatus. |
|
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