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?

questionAnswers(16)

yourAnswerToTheQuestion