Você está offline; aguardando reconexão

Não há suporte para seu navegador

Você precisa atualizar seu navegador para usar o site.

Atualize para a versão mais recente do Internet Explorer

Como armazenamento de estado em aplicativos do Active Server Pages

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 175167
Aviso de Isenção de Responsabilidade sobre Conteúdo do KB Aposentado
Este artigo trata de produtos para os quais a Microsoft não mais oferece suporte. Por esta razão, este artigo é oferecido "como está" e não será mais atualizado.
Sumário
Quando você desenvolver um Web Active Server Pages (ASP) uma maneira comum para personalizar o conteúdo do aplicativo, é armazenar informações sobre o usuário. Há várias maneiras para armazenar informações em um ASP ambiente. Esta lista de artigo as maneiras mais comuns de armazenar estado, incluindo código de exemplo e os prós e contras de cada opção.
Mais Informações

Sessão e variáveis de aplicativo

Como eles funcionam?

As variáveis de sessão e aplicativo são armazenadas no servidor. Uma identificação de sessão, que é gerada no início de uma sessão ASP, é um cookie na memória que armazenados no cliente para identificar as variáveis de sessão . Como resultado, o cliente deve ter cookies ativados no navegador para variáveis de sessão e aplicativo para trabalhar.

Profissionais

  • Esse método é fácil de implementar.
  • Você pode armazenar tipos de variáveis simples e objetos (embora não é recomendável armazenar objetos).
  • Os valores que são armazenados em variáveis de sessão e aplicativo ficam ocultos do usuário.

Desvantagens

  • Este método requer clientes tem cookies ativados no navegador da Web.
  • Esse método confiável não pode ser compartilhado entre quadros em um conjunto de quadros ou em várias instâncias do navegador.
  • Esse método armazena informações no servidor Web. Isso diminui a escalabilidade de duas maneiras: variáveis de sessão e aplicativo usar recursos no servidor e não pode ser usados em farms de Web de sua carga balanceada completamente.

Exemplo

Definir o valor de uma variável de sessão:
<%   'Store information in a session variable.   Session("myInformation") = "somevalue"%>				
recuperar o valor da variável de sessão:
<%    'Retrieve the information stored in the session variable.    myValue = Session("myInformation")%>				

Cookies

Como eles funcionam?

Há dois tipos de cookies: os cookies na memória e cookies que são armazenados em disco do cliente. Um cookie na memória é um ou mais pares nome-valor que são armazenados na memória do navegador até o navegador for fechado. Um cookie é armazenado para disco é um arquivo no computador do cliente que contém pares nome-valor.

Cookies podem ser definidos e recuperados do código do lado do cliente e lado do servidor.

Profissionais

  • Esse método é fácil de implementar.
  • Esse método pode ser salvo em disco para uso futuro (baseado em disco cookie) simplesmente definindo uma data de expiração no cookie de. Isso permite que o armazenamento entre sessões do navegador.

Desvantagens

  • O cliente pode modificar manualmente os cookies são armazenados em disco.
  • Este método requer clientes tem cookies ativados no navegador da Web.
  • Os cookies não podem armazenar objetos.

Exemplo

Armazenar informações em um cookie:
<%   'Set a cookie value.   Response.Cookies("myInformation") = "somevalue"   'Expire the cookie to save it to disk. If this is omitted, the cookie   'will be an in-memory cookie. In this case, the cookie is set to expire   'in twenty days.   Response.Cookies("myInformation").Expires = now() + 20%>				
recuperar o valor de um cookie:
<%    'Retrieve the information that is stored.    myValue = Request.Cookies("myInformation")%>				

Campos de formulário ocultos

Como eles funcionam?

Cada página precisa de um formulário com campos de formulário ocultos que contêm as informações de estado. Em vez de vinculação e redirecionando para páginas, o formulário é enviado quando um usuário navega para uma página diferente.

Profissionais

  • Esse método não exige cookies.

Desvantagens

  • Pode ser inconveniente para redirecionar e links para páginas.
  • Esse método não pode armazenar objetos.

Exemplo

Armazenar informações em campos ocultos:
<HTML><HEAD><SCRIPT LANGUAGE=javascript>  //Function that is used to submit the links:  function browseToUrl(url){    form1.action=url;    form1.submit();  }</SCRIPT></HEAD><BODY><%  dim myInformation  myInformation = "somevalue"  %><!-- This stores the value that is set above in the hidden form field. --><FORM id="form1" name="form1" action="" method="post"><INPUT type="hidden" id="myInformation" name="myInformation" value="<%= myInformation%>">  <!-- Navigation sample that uses this technique. --><INPUT type="button" value="p3.asp" id=button1 name=button1 onclick='goToUrl("p3.asp");'></FORM></BODY></HTML>				
recuperar o valor do campo de formulário oculto:
<%    'Retrieving the information that is stored.    myValue = Request.Form("myInformation")%>				

QueryString

Como funciona?

Quando você usar a coleção QueryString , as variáveis são armazenadas na URL como um par nome-valor. Por exemplo:
http://servername/page.asp?var1=value1&var2=value2&var3=value3				
Observação : pares nome-valor são separados por um e comercial (&).

Profissionais

  • Se o cliente indicadores a página, o estado serão mantidas.

Desvantagens

  • A URL completa só pode ser 2083 bytes.
  • Esse método não pode armazenar objetos.
  • A URL é muito longa e difícil de ler.

Exemplo

Armazenar informações em QueryString:
<HTML><HEAD></HEAD><BODY><%   'Function that assembles the QueryString:   function AddToQueryString(qs, name, value)          if qs="" then       qs = name & "=" & value     else       qs = qs & "&" & name & "=" & value     end if          addToQueryString = qs   end function   dim querystring   'Store the first value.   querystring = AddToQueryString(querystring, "firstvar", "firstvalue")   'Store the second value.   querystring = AddToQueryString(querystring, "secondvar", "secondvalue")%><a href="urlreceive.asp?<%=querystring%>">urlreceive.asp</a></BODY></HTML>				
recuperar os valores de QueryString:
<%    'Retrieve the information stored.    myFirstValue = Request.QueryString("firstvar")    mySecondValue = Request.QueryString("secondvar")%>				

Arquivo e o banco de dados

Como eles funcionam?

Você pode implementar essa técnica de muitas maneiras diferentes. As etapas a seguintes ilustram uma maneira de implementar o arquivo e armazenamento de banco de dados de estado:
  1. Gere uma identificação quando o usuário fizer logon pela primeira vez ou navega para uma página dentro de seu aplicativo.
  2. Use qualquer uma das técnicas deste artigo para armazenar a identificação.
  3. Para armazenar os valores em um arquivo, use a identificação como nome do arquivo. Para armazenar os valores em um banco de dados, use uma combinação da identificação e o par nome-valor para identificar o registro.
  4. Opcionalmente, armazene um carimbo de data/hora com o par nome-valor no banco de dados. Para arquivos, você pode usar o carimbo de hora da última revisão.
  5. Escreva um serviço para executar limpeza (excluir registros e arquivos) em determinados intervalos (por exemplo, a cada 20 minutos ou a todas as noites, com base em quantos usuários acessam o site). O serviço pode utilizar o carimbo de data/hora para determinar se um registro expirou.

Profissionais

  • Os valores estão completamente ocultos do usuário.
  • Se você usar um compartilhamento de arquivo ou um banco de dados, isso pode ser usado para simular variáveis de sessão em um Web Farm.
  • Ele não requer cookies.

Desvantagens

  • Ele armazena dados no lado do servidor.
  • Pode ser complicado a implementar.
  • Esse método pode ser lento porque o acesso a banco de dados e arquivos é necessária para armazenar e recuperar os valores.
Referências
Para obter mais informações, consulte os seguintes artigos no Microsoft Developer Network (MSDN): Para obter informações adicionais, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
244465Como desativar estado da sessão ASP no Active Server Pages
178037PROBLEMA: Sessão variáveis perdidas ao ASP está localizado no conjunto de quadros
Para artigos da Base de dados de Conhecimento mais recentes e outras informações de suporte sobre Visual InterDev e Active Server Pages, consulte a seguinte página no site do suporte técnico da Microsoft:

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 175167 - Última Revisão: 03/09/2007 08:48:25 - Revisão: 3.1

  • Microsoft Active Server Pages 4.0
  • kbmt kbaspobj kbcodesnippet kbhowto kbscript KB175167 KbMtpt
Comentários
id=1&t=">DI=4050&did=1&t=">>agName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> >>ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>"); &t=">