Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

Trabalhando com Cache - Parte 1

Nesta série de 2 artigos, mostrarei como Trabalhar com Cache.

Olá pessoal, neste artigo mostrarei como trabalhar com cache.

Faço este artigo com base na videoaula de Bruno Belizário, do Portal Linha de Código, mediante autorização do mesmo. Acompanhem o passo-a-passo:

Iremos fazer um exemplo simples e rápido mostrando como armazenar algumas informações de uma página no cache e repassá-las a outra página. Este exemplo é bem parecido com o artigo sobre Manipulação do Web.Config.

Começando, abra o Visual Studio, vá em File > New Project (CTRL + SHIFT + N), escolha o template ASP.NET Web Application e dê o nome  ExemploCache.

Na Default.aspx, vá ao modo Design, crie uma tabela e insira alguns controles na página, para que fique desta forma:


Na ordem em que se vê na imagem acima, passei os seguintes ID’s aos respectivos controles: lblNome, txtNome, lblCidade, txtCidade, btnSalvarCache e btnChamarPagina.

Antes de ir aos códigos, crie uma nova classe que irá guardar o tipo de dados que iremos armazenar em cache. Dê o nome Pessoa a essa classe criada.

Na classe criada crie o código com as propriedades referentes aos valores que serão inseridos pelo usuário na página:

public class Pessoa

    {

        public string Nome { get; set; }

        public string Cidade { get; set; }

    }

Agora sim, vá à página de códigos e crie o método abaixo, que irá salvar os dados em cache:

private void SalvarEmCache()       

        {

            try

            {

                //Instancio a classe Pessoa, passo as propriedades dela e as atribuo os valores aos textboxes

                Pessoa objPessoa = new Pessoa();

                objPessoa.Nome = txtNome.Text;

                objPessoa.Cidade = txtCidade.Text;

 

                //Crio o Cache com o nome DadosPessoa, que recebe o objeto instanciado da classe Pessoa

                Cache["DadosPessoa"] = objPessoa;

            }

            catch (Exception ex)

            {

                throw new Exception(ex.Message);

            }

        }

A forma descrita acima é a mais simples de se guardar valores no Cache. Mais adiante mostrarei outra forma.

Agora chame o método recém-criado no botão Salvar em Cache:

protected void btnSalvarCache_Click(object sender, EventArgs e)

        {

            SalvarEmCache();

        }

Agora vá à Solution Explorer (CTRL + W + S), e crie uma nova página com o nome DadosPessoa. Nessa página, que irá receber os dados da Default.aspx, vá ao modo Design e adicione os controles para que fique parecido com a imagem abaixo:


Como você pode perceber na imagem deixei os labels Nome e Cidade somente com o ID, sem texto, já que os textos virão pelo Cache gerado pela Default.aspx.

Isso mesmo que iremos fazer, criando o seguinte método:

private void RecuperaDadosDoCache()

        {

            try

            {

                //Verifico se meu Cache está diferente de nulo

                if (Cache["DadosPessoa"] != null)

                {

                    //Instancio a classe Pessoa

                    Pessoa objPessoa = new Pessoa();

 

                    //Faço um Cast(conversão) no Cache para o tipo da classe Pessoa

                    objPessoa = (Pessoa)Cache["DadosPessoa"];

 

                    //Meus labels recebem os valores armazenados na classe Pessoa

                    lblNome.Text = objPessoa.Nome;

                    lblCidade.Text = objPessoa.Cidade;

                }

            }

            catch (Exception ex)

            {

                throw new Exception(ex.Message);

            }

        }

Assim faço a verificação se há dados no Cache, prevenindo desta forma erros de compilação, para então fazer com o que os labels recebam os valores da digitados pelo usuário na Default.aspx. Agora chame este método no Page_Load:

protected void Page_Load(object sender, EventArgs e)

        {

            RecuperaDadosDoCache();

        }

Agora volte a Default.aspx, dê dois cliques no botão Chamar Página e coloque este código que irá redirecionar para a página DadosPessoa.aspx:

protected void btnChamarPagina_Click(object sender, EventArgs e)

        {

            Response.Redirect("DadosPessoa.aspx");

        }

Na próxima parte veremos a conclusão deste exemplo.

Aguardem!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Autor
Wellington Balbo De Camargo

Tecnólogo em Análise de Sistemas, atua na área de Desenvolvimento .NET com aplicações Web a 2 anos, onde trabalha atualmente com a linguagem C# usando a tecnologia ASP.NET, no desenvolvimento em camadas usando o banco de dados SQL Server. Procura estudar cada vez mais para melhorar os conheciment...


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível somente para quem possui Créditos DevMedia. (Ele não está associado a nenhuma publicação DevMedia).


  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03