quarta-feira, 10 de abril de 2013

Sessão - ASP.Net

As vezes precisamos manter algumas informações na memória para utilizar em qualquer lugar do site e
enviar informações por post ou query string nem sempre é a solução. A solução nesse caso é a utilização da sessão.

Sempre que acessamos um  site automaticamente u ma sessão é criada.

Podemos manter qualquer tipo de informação na sessão, texto, valores, imagens.  por exemplo:

Session["Nome"] = "Celso Zequim";

Para resgatar o valor da sessão é simples:

string nome =(string) Session["Nome"];

Esse valor estará disponível em qualquer página do site.

também é possível incluir um objeto na sessão.  por exemplo:

Criei um objeto para guardar o nome e o email do usuário logado no sistema.

public class UsuarioLogado
{

    public string Nome;
    public string email;
    public UsuarioLogado() { }
}

no arquivo Global.asax.cs indiquei no inicio da sessão qual é o objeto a ser carregado.
protected void Session_Start(object sender, EventArgs e)
{
    UsuarioLogado usuario = new UsuarioLogado();
    Session["UsuarioLogado"] = usuario;
}

ou seja, toda vez que alguém acessar o site, automaticamente será criado um objeto UsuarioLogado na sessão.
para atribuir um valor a esse objeto é só seguir o exemplo:

UsuarioLogado usuario = (UsuarioLogado)Session["UsuarioLogado"];
usuario.Nome = "Celso";
usuario.email = "czequim@gmail.com";







4 comentários:

  1. e eu posso usar isso em qualquer parte da apicacao ou esta limitado ao projeto do website ???

    ResponderExcluir
  2. Olá, você só vai conseguir criar sessão em projetos do tipo web.

    ResponderExcluir