ASP.NET Integração de cache
O exemplo AspNetCachingIntegration demonstra como utilizar o cache de saída ASP.NET com o modelo de programação WCF WEB HTTP. Este tópico se concentra no recurso de integração de cache de saída ASP.NET.
Demonstra
Integração com o ASP.NET Output Cache.
Debate
O exemplo usa o AspNetCacheProfileAttribute para utilizar ASP.NET cache de saída com o serviço Windows Communication Foundation (WCF). 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 de determinada operação.
No arquivo Service.cs do projeto Service de exemplo, as GetCustomer
operações e GetCustomers
são marcadas com o AspNetCacheProfileAttribute, que fornece o nome do perfil de cache "CacheFor60Seconds". No arquivo Web.config do projeto Service, o perfil de <system.web>
cache "CacheFor60Seconds" é fornecido sob o <caching>
elemento de . Para esse perfil de cache, o valor do atributo é "60", portanto, as duration
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 varmByParam
atributo é definido como "format" para que solicitações com valores diferentes para o parâmetro de cadeia de caracteres de format
consulta tenham suas respostas armazenadas em cache separadamente. Por fim, o atributo do perfil de varyByHeader
cache é definido como "Aceitar", de modo que solicitações com diferentes valores de cabeçalho Accept têm suas respostas armazenadas em cache separadamente.
Program.cs no projeto Client demonstra como esse cliente pode ser criado usando HttpWebRequesto . Observe que essa é apenas uma maneira de acessar um serviço WCF. Também é possível acessar o serviço usando outras classes do .NET Framework como a fábrica de canais WCF e WebClient. Outros exemplos no SDK (como o exemplo de serviço HTTP básico) ilustram como usar essas classes para se comunicar com um serviço WCF.
Para executar o exemplo
A amostra consiste em três projetos:
Serviço: Um projeto de aplicativo Web que inclui um serviço HTTP WCF hospedado no 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 de Cliente usado pelo cliente e pelo serviço.
À medida que o aplicativo de console cliente é executado, o cliente faz solicitações ao serviço e grava as informações pertinentes das respostas na janela do console.
Para executar o exemplo
Abra a solução para o ASP.NET Caching Integration Sample.
Pressione Ctrl+Shift+B para criar a solução.
Se a janela Gerenciador de Soluções ainda não estiver aberta, pressione CTRL+W+S.
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.
Na janela Gerenciador de Soluções, clique com o botão direito do mouse no projeto Cliente e selecione Iniciar Nova Instância.
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.
À medida que o exemplo é executado, o cliente grava o status da atividade atual.
Pressione qualquer tecla para encerrar o aplicativo de console do cliente.
Pressione SHIFT+F5 para parar de depurar o serviço.
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.