180 likes | 315 Views
Eventos, Variáveis de Sessão e Aplicação. Tecnologia para Web Enrique P. L. de Oliveira enrique.leite@aes.edu.br. Aplicações Web. Uma aplicação Web pode ser considerada qualquer aplicação que esteja sendo executada no servidor Web
E N D
Eventos, Variáveis de Sessão e Aplicação Tecnologia para Web Enrique P. L. de Oliveira enrique.leite@aes.edu.br
Aplicações Web • Uma aplicação Web pode ser considerada qualquer aplicação que esteja sendo executada no servidor Web • Além das variáveis locais e globais (de cada classe) as aplicações Web pode utilizar dois tipos de variáveis para manter os dados: • variáveis de sessão: válidas enquanto durar a sessão de um usuário • variáveis de aplicação: válidas enquanto durar a aplicação Web.
Aplicações Web • O protocolo HTTP é um protocolo sem estado, ou seja, cada requisição é tratada independentemente. • Para controlar quando uma sessão começa o ASP .NET associa de forma automática um objeto Session para a sessão e define também um tempo máximo para a sessão (Timeout). Se o tempo for excedido sem qualquer requisição a sessão é encerrada.
Arquivos de Configurações • Existem dois arquivos que são usados em ASP.NET para configurar a aplicação Web: web.config e global.asax.
web.config • O arquivo web.config é um arquivo de configurações para aplicações Web no formato XML. • Assim como o global.asax não é obrigatório para que a aplicação Web funcione. Caso não exista, o ASP.NET utiliza um arquivo chamado machine.config como padrão. • Geralmente o arquivo web.config é colocado na raiz da aplicação junto com o arquivo global.asax. • Vale ressaltar que é possível criar configurações específicas para diferentes diretórios, sendo assim, uma aplicação pode ter mais de uma web.config
Armazenando configurações no web.config • Existem duas formas de criar uma chave no web config • A primeira é através da edição do próprio web.config • A segunda é através da aplicação ASP.NET Configuration, acessível através do menu Website. • Essa aplicação permite criar várias configurações para o website, entre elas Application Configuration, onde é possível gerenciar as chaves existentes no web.config.
Acessando as configurações • Para acessar as configurações via programação, são necessários: • Incluir o namespace System.Web.Configuration • Acessar a propriedade AppSettings da classe estática WebConfigurationManager
global.asax • O arquivo global.asax é uma arquivo (classe) opcional utilizado na configuração de uma aplicação Web. Este arquivo deve estar presente no diretório raiz da aplicação Web. • Funciona de maneira semelhante as páginas *.aspx. • É utilizado para sincronizar qualquer evento exposto pela classe HttpApplication.
global.asax - Eventos • A ordem de execução dos Eventos do arquivo global.asax: 1. Application_Start2. Application_BeginRequest3. Application_AuthenticateRequest4. Application_AuthorizeRequest5. Application_ResolveRequestCache6. Session_Start7. Application_AcquireRequestState8. Application_PreRequestHandlerExecute9. Page_Load (arquivo *.aspx) ou qualquer outra saída de página10. Application_PostRequestHandlerExecute11. Application_ReleaseRequestState12. Application_UpdateRequestCache13. Application_EndRequest14. Application_PreSendRequestHeaders
Variáveis de Sessão • O objeto Session foi criado para armazenar propriedades (valores) ligados a cada visitante, individualmente. • Uma variável Session é criada quando o visitante entra no site (cada visitante tem uma session e cada session recebe um ID), e é destruída quando o visitante sai do site (seja por logoff explícito ou por TimeOut).
Variáveis de Sessão • Para criar uma variável de sessão utiliza-se: • Session[“Nome”] = valor; • Para remover uma variável de sessão: • Session.Remove(“Nome”);
Variáveis de Aplicação • O objeto Application entre outras finalidades, pode armazenar informações referente a todos os usuários do site. • Uma variável Application é criada quando a aplicação é executada e é destruída quando o último visitante sai do site.
Variáveis de Aplicação • Para criar uma variável de aplicação utiliza-se: • Application[“Nome”] = valor; • Para remover uma variável de sessão: • Application.Remove(“Nome”);
Exercícios • Criar uma aplicação que contenha 4 diferentes controles e a cada ação do usuário seja carregada em um listbox os eventos ocorridos. Para que alguns controles executem o evento assim que ocorre a ação do usuário é necessário alterar a propriedade AutPostBack para True.
Exercícios • De forma semelhante ao exercício anterior, criar uma aplicação que armazene a seqüência dos eventos ocorridos (Incluindo eventos do global.asax) e exiba-os em uma lista. • Criar uma aplicação que armazene uma mensagem e o nome da pessoa que escreveu. Ao acessar a página usuários podem postar uma nova mensagem. A última mensagem deve sempre ser armazenada.
Bibliografia • http://www.bufaloinfo.com.br/artigos/artigo1510.asp • http://www.macoratti.net/aspnljv2.htm • http://www.mas.com.br/Artigos/mantendo.htm • http://www.projetando.net/Sections/ViewArticle.aspx?ArticleID=9