Compartilhar via


Integração de cache ASP.NET

O exemplo AspNetCachingIntegration demonstra como utilizar o cache de saída ASP.NET com o modelo de programação HTTP da Web do WCF. Este tópico se concentra no recurso de integração do cache de saída ASP.NET.

Demonstra

Integração com o cache de saída ASP.NET.

Discussão

O exemplo usa o AspNetCacheProfileAttribute para utilizar cache de saída ASP.NET com o serviço WCF (Windows Communication Foundation). O AspNetCacheProfileAttribute é aplicado a operações de serviço e fornece o nome de um perfil de cache em um arquivo de configuração que deve ser aplicado às respostas da operação fornecida.

No arquivo Service.cs do projeto de serviço de exemplo, as operações GetCustomer e GetCustomers são marcadas com o AspNetCacheProfileAttribute, que fornece o nome do perfil de cache "CacheFor60Seconds". No arquivo Web.config do projeto de serviço, o perfil de cache "CacheFor60Seconds" é fornecido sob o elemento <caching> de <system.web>. Para esse perfil de cache, o valor do atributo duration é "60". Portanto, as respostas associadas a esse perfil são armazenadas em cache no cache de saída ASP.NET por 60 segundos. Além disso, para esse perfil de cache, o atributo varmByParam é definido como "formato" para que as solicitações com valores diferentes para o parâmetro de cadeia de caracteres de consulta format tenham suas respostas armazenadas em cache separadamente. Por fim, o atributo do perfil de cache varyByHeader é definido como "Aceitar", para que as solicitações com valores de cabeçalho Accept diferentes tenham suas respostas armazenadas em cache separadamente.

O Program.cs no projeto do Cliente demonstra como esse cliente pode ser criado usando HttpWebRequest. Observe que essa é apenas uma maneira de acessar um serviço WCF. Também é possível acessar o serviço usando outras classes .NET Framework, como a fábrica de canais do WCF e o WebClient. Outros exemplos no SDK (como o Serviço básico de HTTP) ilustram como usar essas classes para se comunicar com um serviço WCF.

Para executar a amostra

Esta amostra é composta por três projetos:

  • Serviço: um projeto de aplicativo Web que inclui um serviço HTTP do WCF hospedado em ASP.NET.

  • Cliente: um projeto de aplicativo de console que faz chamadas para o serviço.

  • Comum: uma biblioteca compartilhada que contém o tipo cliente usado pelo cliente e pelo serviço.

Conforme o aplicativo de console é executado, o cliente faz solicitações ao serviço e grava as informações pertinentes das respostas na janela do console.

Para executar a amostra

  1. Abra a solução para o exemplo de integração de cache do ASP.NET.

  2. Pressione Ctrl+Shift+B para criar a solução.

  3. Se ainda não estiver aberta, pressione CTRL+W, S para abrir a janela Gerenciador de Soluções.

  4. Na janela Gerenciador de Soluções, clique com o botão direito do mouse no projeto Serviço e selecione Iniciar Nova Instância. Isso inicia o servidor de desenvolvimento ASP.NET, que hospeda o serviço.

  5. Na janela Gerenciador de Soluções, clique com o botão direito do mouse no projeto Cliente e selecione Iniciar Nova Instância.

  6. A janela do console do cliente é exibida e fornece o URI do serviço em execução e o URI da página de ajuda HTML para o serviço em execução. A qualquer momento, você pode exibir a página de ajuda HTML digitando o URI da página de ajuda em um navegador.

  7. Conforme o exemplo é executado, o cliente grava o status da atividade atual.

  8. Pressione qualquer tecla para encerrar o aplicativo de console do cliente.

  9. Pressione SHIFT + F5 para parar a depuração.

  10. Na Área de Notificação do Windows, clique com o botão direito do mouse no ícone do servidor de desenvolvimento ASP.NET e selecione Parar.