Você está aqui: ASP.NET ::: Dicas & Truques ::: Sessão

Aprenda a usar sessões (session) em ASP.NET

Quantidade de visualizações: 12359 vezes
Em algumas das minhas dicas sobre ASP.NET você verá que é possível usar cookies para "memorizar" informações entre os acessos que um usuário faz às nossas páginas. Porém, os cookies possuem algumas limitações, tais como a quantidade de informação que pode ser armazenada. Além disso, cookies são gravados no computador do usuário, o que lhe permite recusar tal iniciativa por parte do servidor web.

O ASP.NET, com o propósito de contornar as limitações impostas por cookies, nos permite trabalhar com sessões. Cada sessão é associada a um usuário em particular e podemos gravar nesta a quantidade de informações que desejarmos. E, diferente do que ocorre com cookies, podemos gravar diferentes tipos de dados em uma sessão, incluindo objetos de classes personalizadas, DataSet, etc.

Acesso à funcionalidade e valores armazenados na sessão é feito por meio de um objeto da classe HttpSessionState. Este objeto está disponível para acesso a partir da propriedade Session das classes HttpContext e Page.

Uma nova sessão é criada durante a primeira requisição que o usuário faz a uma determinada aplicação ASP.NET e seus valores persistirão durante todo o tempo em que o usuário estiver usando a aplicação. A sessão expirará somente quando o intervalo entre requisições for maior que o número de minutos definido para a propriedade Timeout ou o usuário fechar o navegador web.

Vamos ver um exemplo do uso de sessões em ASP.NET. Nesta demonstração vamos colocar uma caixa de texto, dois botões e um rótulo (Label) em uma página. Veja o código Default.aspx:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<%@ Page Language="C#" AutoEventWireup="true" 
  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Estudos ASP.NET</title>
</head>
<body>

<form id="form1" runat="server">
  Valor na sessão: 
  <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
  <asp:Button ID="Button1" runat="server" Text="Gravar Valor na Sessão" 
      onclick="Button1_Click" /><br />
  <asp:Label ID="Label1" runat="server" Text="Valor gravado na sessão:">
  </asp:Label><br />
  <asp:Button ID="Button2" runat="server" Text="Obter valor na sessão" 
      onclick="Button2_Click" />
</form>

</body>
</html>

Veja agora o código para o arquivo de code-behind Default.aspx.cs:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page {
  protected void Button1_Click(object sender, EventArgs e){
    // vamos gravar o item "arquivo_codigos" na sessão
    Session["arquivo_codigos"] = TextBox1.Text;
  }
  
  protected void Button2_Click(object sender, EventArgs e){
    // vamos obter o valor do item na sessão e exibí-lo no label Label1
    if(Session["arquivo_codigos"] != null)
      Label1.Text = "Valor gravado na sessão: " + Session["arquivo_codigos"];
    else
      Label1.Text = "Valor na sessão não existe ainda";
  }
}

Execute a aplicação web, digite uma frase na caixa de texto e clique o botão "Gravar Valor na Sessão". Em seguida clique o botão "Obter valor na sessão" para exibir, no rótulo Label1, o valor do item gravado na sessão.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de ASP.NET

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 60 usuários muito felizes estudando em nosso site.