Pergunta

Para manter as coisas simples, temos algumas páginas aspx...

Página1.aspx - redefine as informações da Sessão.
Página2.aspx - Formulário de pesquisa com os resultados e conjuntos de variáveis de Sessão.
Page3.aspx, Page4.aspx, Page5.aspx - necessitam de variáveis de Sessão definido na Página2.aspx

O que estamos descobrindo é que, como Página2.aspx cargas e definição de variáveis de Sessão, Página1.aspx está sendo chamado e repor a Sessão.No Entanto, Página1.aspx aparece no navegador, não Página2.aspx.Só nos foi possível encontrar esta acontecendo como atravessámos o código e colocar pontos de quebra em eventos Page_Load para Página1.aspx e Página2.aspx e ficaram surpresos ao ver Página2.aspx sendo processadas assim que Página1.aspx parado de processamento no servidor.

Possivelmente útil info...fazemos uso de uma página Mestra e lá estão os links para Página1.aspx na página Principal.Que isso, eu não posso encontrar qualquer referência ao Página1.aspx na base do código.

atualização:
Isso pode ser devido a autenticação?Parece que, quando eu acesso a Página2.aspx, o servidor é, possivelmente, a autenticação de novo na Página1.aspx?É típico?

Foi útil?

Solução

Obrigado pela dica André.

Nós descobrimos o que estava acontecendo...Página1.aspx no aplicativo é muito Padrão.aspx.Na Página2.aspx, outro desenvolvedor colocar uma img tag na página que não tem propriedade de origem definido.Então, quando Página2.aspx executado, ele estava olhando para uma imagem localizada na raiz do web site de nível, este, em seguida, acionou o código Padrão.aspx (Página1) e limpe a sessão.

No geral parecia algo como isto...

Na Página2.aspx

<img src=""> <!-- this ended up triggering a call to Default.aspx, wiping the session -->

Espero que ajude alguém.

Outras dicas

Lançamento do Fiddler e executar o aplicativo normalmente.Ele vai dizer-lhe o tráfego que está ocorrendo e identificar as páginas que redirecionem o usuário para outras páginas.Uma vez que você sabe o caminho, você pode identificar por esse caminho existe por investigar o código-fonte.

É possível que o seu domínio de aplicação é a reciclagem e, assim, todas as variáveis de sessão são perdidas e você provavelmente tem o código redireciona o visitante se as variáveis de sessão estão em falta, certo?

Se este for o caso, como solução rápida, você pode usar o StateServer ou armazenar as variáveis de sessão no Sql Server.Seu domínio de aplicação não deve ser de reciclagem a cada minuto, mas poderia fazer com que o comportamento que você vê se você estiver armazenando sessões "em processo", que é o padrão.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top