CORRECÇÃO: ASP.NET retorna uma mensagem de erro "NullReferenceException" ao usar o estado de sessão do SQL Server e você ativa o recurso OutPutCaching

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: 831382
Sintomas
Quando você usar o estado de sessão do Microsoft SQL Server e ativar o recurso OutPutCaching para uma página da Web, se você definir o atributo de local (<%@ OutputCache Location="Client" Duration="900" VaryByParam="WaitMessage" %>) do cliente, um usuário pode receber a seguinte mensagem de erro quando o usuário acessa a página da Web mais de uma vez:
NullReferenceException: "objeto de referência não definida para uma instância de um objeto"
Quando esse problema ocorre, um rastreamento de pilha é semelhante ao seguinte aparece na janela cliente:

Pilha de rastreamento
=======================
Erro do servidor em ' / PlacingFileComplete ' aplicativo. Referência de objeto não definida para uma instância de um objeto.
Descrição: Ocorreu uma exceção não tratada durante a execução da atual solicitação da web. Examine o rastreamento da pilha para obter mais informações sobre o erro e onde foi originado no código.
Detalhes da exceção: System.NullReferenceException: não definida para uma instância de um objeto de referência de objeto.
Erro de origem: Uma exceção sem tratamento foi gerada durante a execução de solicitação da web atual.
Informações sobre a origem e o local da exceção podem ser identificadas usando o rastreamento de pilha de exceção abaixo.
Rastreamento de pilha: [NullReferenceException: objeto não definida para uma instância de um objeto de referência.]
System.Web.SessionState.SqlStateClientManager.CanUsePooling() +33
System.Web.SessionState.SqlStateClientManager.GetConnection (Boolean & usePooling) +11
System.Web.SessionState.SqlStateClientManager.ResetTimeoutAsyncWorker(String ID) +40
System.Web.SessionState.SqlStateClientManager.ResetTimeout(String ID) + 4
System.Web.SessionState.SessionStateModule.OnEndRequest(Object Source, EventArgs eventArgs) +102
System.Web.SyncEventExecutionStep.Execute() +60

Causa
Na primeira vez que um usuário acessa a página da Web, o Microsoft ASP.NET armazena uma cópia da página da Web usando a ID sessão exclusiva. do usuário O processo do operador do ASP.NET usa essa cópia em cache da página da Web para todos os processamento posterior da página. Depois de 900 segundos, o cache expire. Em seguida, a cópia em cache da página da Web é excluída da memória. No entanto, identificação da sessão do usuário ainda está ativa.

Quando o usuário tenta acessar a página da Web novamente, o usuário recebe a mensagem de erro aparece na seção "Sintomas" porque a cópia em cache da página da Web tiver sido excluída.
Resolução

Informações de atualização de software

Uma atualização de software com suporte agora está disponível da Microsoft, mas destina-se somente a corrigir o problema descrito neste artigo. Aplique-o somente nos sistemas que apresentarem esse problema específico. Esta atualização de software pode receber testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, a Microsoft recomenda que você aguarde o próximo Microsoft .NET Framework 1.0 service pack que contém essa atualização de software.

Para resolver esse problema imediatamente, contate o Microsoft serviços de suporte para obter a atualização de software. Para obter uma lista completa dos números de telefone do Atendimento Microsoft do e informações sobre os custos de suporte, visite o seguinte site: Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Pré-requisitos

Você deve ter o .NET Framework 1.0 Service Pack 2 instalado para instalar esse hotfix.

Requisitos de reinicialização

Talvez seja necessário reiniciar seu computador após aplicar essa atualização de software se qualquer serviços ou aplicativos que usam arquivos que aparecem na seção "Informações do arquivo" deste artigo estiverem sendo executados quando você aplica essa atualização de software.

Requisitos de reinicialização

Esta atualização de software não substitui outras atualizações de software.

Informações sobre o arquivo

A versão em inglês desta atualização de software apresenta os atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário na ferramenta Data e hora no painel de controle.
   Date         Time   Version       Size       File name   ---------------------------------------------------------------------------------------------   09-Nov-2003  01:45  1.0.3705.468    200,704  Aspnet_isapi.dll   09-Nov-2003  01:38                    4,169  Aspnet_perf.h   09-Nov-2003  01:45                  513,302  Aspnet_perf.ini   09-Nov-2003  01:45                  510,714  Aspnet_perf2.ini   09-Nov-2003  01:45  1.0.3705.468     24,576  Aspnet_regiis.exe   09-Nov-2003  01:45  1.0.3705.468     28,672  Aspnet_wp.exe   09-Nov-2003  00:59  1.0.3705.468     69,632  Corperfmonext.dll   17-Jun-2003  21:43                   16,597  Installpersistsqlstate.sql   17-Jun-2003  21:43                   17,331  Installsqlstate.sql   09-Sep-2003  00:28                   17,807  Installsqlstatetemplate.sql   09-Nov-2003  00:58  1.0.3705.468    303,104  Mscorjit.dll   10-Nov-2003  18:11  1.0.3705.468  1,953,792  Mscorlib.dll   09-Nov-2003  00:51                   10,284  Mscorlib.ldo   09-Nov-2003  00:58  1.0.3705.468  2,273,280  Mscorsvr.dll   09-Nov-2003  00:59  1.0.3705.468  2,269,184  Mscorwks.dll   09-Nov-2003  01:42  1.0.3705.468     20,480  Perfcounter.dll   23-Aug-2002  02:23                       15  Smartnav.htm   30-Jul-2003  00:04                    8,728  Smartnav.js   10-Nov-2003  17:53  1.0.3705.468  1,179,648  System.data.dll   10-Nov-2003  18:10  1.0.3705.468  1,695,744  System.design.dll   10-Nov-2003  17:53  1.0.3705.468  1,175,552  System.dll   10-Nov-2003  17:51  1.0.3705.468    241,664  System.messaging.dll   10-Nov-2003  17:51  1.0.3705.468    311,296  System.runtime.remoting.dll   10-Nov-2003  17:49  1.0.3705.468    131,072  System.runtime.serialization.formatters.soap.dll   10-Nov-2003  17:55  1.0.3705.468  1,196,032  System.web.dll   10-Nov-2003  17:51  1.0.3705.468    507,904  System.web.services.dll   10-Nov-2003  18:12  1.0.3705.468  1,994,752  System.windows.forms.dll   09-Nov-2003  01:51                   16,776  System.windows.forms.ldo   09-Nov-2003  01:47  1.0.3705.468     57,344  System.windows.forms.tlb   10-Nov-2003  18:08  1.0.3705.468  1,302,528  System.xml.dll   10-Nov-2003  17:47  1.0.3705.468     32,768  Tlbimp.exe   17-Jun-2003  21:43                    1,419  Uninstallpersistsqlstate.sql   09-Sep-2003  00:28                    2,119  Uninstallsqlstatetemplate.sql   10-Nov-2003  17:48  1.0.3705.468     65,536  Wsdl.exe
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Mais Informações
Por padrão, a diretiva OutputCache é definida para Server . Para reproduzir o problema, defina a diretiva OutputCache para cliente , como no exemplo a seguir:
<%@ OutputCache Location="Client" Duration="900" VaryByParam="WaitMessage" %>
Para obter mais informações sobre a terminologia que é usada para descrever as atualizações de produtos da Microsoft, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software
Referências
Para obter mais informações, clique nos números abaixo para ler os artigos na Base de dados de Conhecimento da Microsoft:
317604Como configurar o SQL Server para armazenar o estado da sessão ASP.NET
315896Como melhorar o desempenho armazenando em cache páginas ASP.NET

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 831382 - Última Revisão: 10/25/2005 18:29:50 - Revisão: 1.5

Microsoft .NET Framework 1.0, Microsoft Visual Studio .NET 2002 Professional Edition, Microsoft Visual Studio .NET 2002 Enterprise Architect, Microsoft Visual Studio .NET 2002 Enterprise Developer, Microsoft ASP.NET 1.0

  • kbmt kbhotfixserver kbqfe kbvs2002sp1sweep kbfix kbqfe kbnetframe100presp3fix kbsqlserv2000sp1fix kbbug KB831382 KbMtpt
Comentários