A sessão do ASP.NET expirou ou não pôde ser encontrada -> Como o Session.SessionID é alterado (Reporting Services)
1.-Estou usando serviços de relatório e às vezes recebo esse erroASP.NET session has expired or could not be found
quando tento carregar um relatório.
2.-Percebi que recebo esse erro quando a propriedade Session.SessionID muda, mesmo que o usuário seja o mesmo. Se não mudar, o relatório será carregado. Quero dizer, se eu atualizar o relatório várias vezes, sempre que o Session.SessionID for o mesmo que o último, o relatório será carregad
3.-Documentação da Microsoft diz:
Ao usar o estado da sessão baseada em cookie, o ASP.NET não aloca armazenamento para os dados da sessão até que o objeto Session seja usado. Como resultado, um novo ID de sessão é gerado para cada solicitação de página até que o objeto da sessão seja acessado. Se seu aplicativo exigir um ID de sessão estático para toda a sessão, você poderá implementar o método Session_Start no arquivo Global.asax do aplicativo e armazenar dados no objeto Session para corrigir o ID da sessão ou usar código em outra parte do seu aplicativo para armazenar explicitamente dados no objeto Session.
Se o seu aplicativo usar o estado da sessão sem cozinhar, o ID da sessão será gerado na visualização da primeira página e será mantido por toda a sessã
O ponto é que não posso usar um estado de sessão sem cook porque preciso de cookie
O que eu poderia fazer para evitar esse erro? Ou O que eu poderia fazer para evitar que o Session.SessionID fosse alterado a cada solicitação?