Perdita delle variabili di sessione

mercoledì 09 luglio 2008 - 14.35

lmattioli Profilo | Newbie

Ho sviluppato una procedura in ASP.NET 2.0 con visual studio 2005 e mi si è presentato un grosso problema: dopo 3-10 minuti la sessione di lavoro scade, perdendo le variabili di sessione. Ho controllato le impostazioni di time-out sia nel webconfig che nell'IIS senza trovare anomalie.
mattio

amelix Profilo | Expert

Hai fatto delle modifiche al codice/web.config?
L'applicazione web dove gira (housing/hosting)?

Cmq le variabili si session/application sono sconsigliate.

Andrea - http://www.MelisWeb.eu/
CMS - http://www.WebOrama.it/

lmattioli Profilo | Newbie

nel file di webconfig è configurata la modalità in_proc con time-out di 480. Sto lavorando su un server di test collegato ad una LAN che è la stessa rete dove risiede il client web. Comunque anche senza nessuna configurazione relativa alla modalità di gestione delle variabili di sessione nel webconfig, il problema persiste.

ti posto il webconfig

<?xml version="1.0"?>
<!--
Nota: come alternativa alla modifica manuale del file, è possibile utilizzare lo
strumento di amministrazione Web per configurare le impostazioni dell'applicazione. Utilizzare il comando
Configurazione ASP.NET del menu Sito Web di Visual Studio.
Un elenco completo di impostazioni e commenti è disponibile nel file
machine.config.comments che si trova in genere in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<appSettings>
<!--Parametri per la gestione degli utenti su db-->


<!--percorso del WebServices-->
<add key="GR.Service" value="http://FLY/WS_GROUPER_PUB/Service.asmx"/>
<!--percorso della procedura della 3M CMExpert.exe-->
<add key="PathGrouper" value="c:\WINDOWS\notepad.exe"/>
<!--Parte del nome fisso del file di input necessario per il DRG-->
<add key="InputGrouper" value="drg_phil"/>
<!--Parte del nome fisso del file di output necessario per il DRG-->
<add key="OutputGrouper" value="sk_phil"/>

<!--Imposto i parametri per la visualizzazione della barra dei servizi: value=0 non visualizzare; value=1=visualizzare-->
<add key="BarraServiziFly" value="1" />
<!--Imposto i parametri per la riapertura di una nuova sessione di lavoro del SIO WEB in attesa delle elaborazioni-->
<add key="ServerProceduraWeb" value="localhost"/>
<add key="UrlPaginaPrincipale" value="SIOWEB/Default.aspx"/>
<!--Parametri di collegamento PSWEB-->
<add key="DbTypePSWEB" value="SqlServer" />
<add key="DbServerNamePSWEB" value="FLYPORTALE" />



<add key="TimeOutCommand" value="600" />
<add key="CodCliente" value="2" />
</appSettings>
<connectionStrings/>
<system.web>
<!--
Impostare compilation debug="true" per inserire i
simboli di debug nella pagina compilata. Poiché tale operazione ha effetto
sulle prestazioni, impostare questo valore su true
solo durante lo sviluppo.

Opzioni di Visual Basic:
Impostare strict="true" per impedire qualsiasi conversione di tipi di dati
in caso di possibile perdita di dati.
Impostare explicit="true" per imporre la dichiarazione di tutte le variabili.
-->
<compilation debug="true" strict="false" explicit="true">
<assemblies>
<add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Shared, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Enterprise.Framework, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Enterprise.InfoStore, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
</assemblies></compilation>
<pages>
<namespaces>
<clear/>
<add namespace="System"/>
<add namespace="System.Collections"/>
<add namespace="System.Collections.Specialized"/>
<add namespace="System.Configuration"/>
<add namespace="System.Text"/>
<add namespace="System.Text.RegularExpressions"/>
<add namespace="System.Web"/>
<add namespace="System.Web.Caching"/>
<add namespace="System.Web.SessionState"/>
<add namespace="System.Web.Security"/>
<add namespace="System.Web.Profile"/>
<add namespace="System.Web.UI"/>
<add namespace="System.Web.UI.WebControls"/>
<add namespace="System.Web.UI.WebControls.WebParts"/>
<add namespace="System.Web.UI.HtmlControls"/>
</namespaces>
</pages>
<!--
La sezione <authentication> consente di configurare
la modalità di autenticazione della protezione utilizzata da
ASP.NET per identificare un utente in ingresso.
-->
<authentication mode="Windows"/>
<!--
La sezione <customErrors> consente di configurare
l'operazione da eseguire in caso di errore non gestito
durante l'esecuzione di una richiesta. In particolare,
consente agli sviluppatori di configurare le pagine di errore HTML
in modo che vengano visualizzate al posto dell'analisi dello stack dell'errore.

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
<sessionState mode="InProc"
cookieless="false"
timeout="480">
</sessionState>

</system.web>

</configuration>

mattio

luigidibiasi Profilo | Guru


In IIS controlla il pool di applicazioni associato al sito web.

Potrebbe essere un problema di riciclo dei processi oppure una impostazione sbagliata di timeout inattività.
(o un Session.abandon scritto e dimenticato in qualche pagina)

(naturalmente vale sempre il consiglio di non usare variabili session.....)

Luigi Di Biasi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5