Visão geral do tratamento de exceções (Cache do Windows Server AppFabric)

A API de cache do Windows Server AppFabric apresenta exceções de .NET quando ocorrem erros. Este tópico analisa conceitos básicos para lidar com erros e fornece um exemplo.

A classe DataCacheException

Um objeto DataCacheException comum é apresentado para erros específicos dos métodos de cache do AppFabric. O objeto DataCacheException contém quatro propriedades que podem ajudar você a diagnosticar a causa de uma exceção:

Propriedade DataCacheException Descrição

Message

Uma cadeia de caracteres que descreve o erro.

ErrorCode

Um valor inteiro que corresponde a um código de erro constante na classe DataCacheErrorCode.

SubStatus

Um valor inteiro que corresponde a um substatus constante na classe DataCacheErrorSubStatus.

InnerException

Uma instância de exceção que causa a exceção atual. Esse valor pode ser nulo.

Algumas falhas, como tempo limite, podem ocorrer em qualquer método de cliente de cache. O código do seu aplicativo precisa estar preparado para lidar com essas exceções comuns. Para obter mais informações, consulte Exceções comuns (Cache do Windows Server AppFabric).

Dica

Algumas falhas não apresentam exceções. Por exemplo, o método Get retornará um valor nulo se a chave não for encontrada. Outros métodos podem retornar valores booleanos para indicar êxito ou falha. Para obter mais informações sobre métodos específicos, consulte o namespace Microsoft.ApplicationServer.Caching na documentação da biblioteca de classes do Windows Server AppFabric.

Exemplo

O exemplo a seguir tenta colocar um objeto da cadeia de caracteres, denominado strObject, em um DataCache, denominado myCache. O método Put sobrecarregado é utilizado para especificar uma região de cache para o objeto. Se a região ainda não existir no cache, o objeto DataCacheException é apresentado com um código de erro do RegionDoesNotExist. Neste exemplo, esse erro é remediado com a criação da região e uma nova tentativa da operação de implantação.

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

Consulte também

Conceitos

Exceções comuns (Cache do Windows Server AppFabric)
Configurando tempos limites do cliente de cache (Cache do Windows Server AppFabric)

  2011-12-05