2017-03-02 4 views
0

i-Sitzung verwenden eine ASP.Net C# Web-Formular Benutzer-ID zu speichern, dass ich es aus der Datenbank erhalten, wenn Log-Benutzer inSession verloren, nachdem viele Male ASP.Net C# Webformular Postbacks

der Benutzer die Dateneingabe ist und er füllen eine Form sie in die Datenbank zu laden, so gibt es viele Postbacks ist das Problem ist, ich meine Session nach wenigen Postbacks verlieren

wie dieses Problem zu verhindern, dass ich am leben, bis die Abmeldung eines Benutzers

meiner Webseite meine Session müssen auf Hosting-Server

Session["EmpID"] = dt.Rows[0]["EmpID"].ToString(); 

Antwort

0

Ich habe ein paar Vorschläge. Überprüfen Sie das Sitzungs-Timeout, stellen Sie sicher, dass Sie Ihre Sitzung nicht zwischenzeitlich in Code löschen, und stellen Sie sicher, dass Ihr Anwendungspool nicht wiederverwendet wird. Wenn dies nicht funktioniert, stellen Sie sicher, dass Sie SessionState Knoten in Web.Config-Datei mit Modus und Timeout-Attribute festgelegt haben. Stellen Sie außerdem sicher, dass Sie die Daten erhalten, während die Sitzung eingestellt ist. Hoffe das hilft.

+0

Vielen Dank, aber wie ich überprüfen kann, ist der Anwendungspool nicht im smarterp.net Hosting und über SessionState mit Timeout 40 in web.config –

+0

recycling Sie können in Ihrem Code überprüfen, dass Sie nichts geschrieben haben, was könnte Veranlasst den IIS zu recyceln. Dies geschieht, wie Sie wissen, versuchen Sie also, den Wert des Modusattributs in der Konfigurationsdatei auf "StateServer" anstelle von "InProc" zu ändern und versuchen Sie es. In diesem Fall sollte es auch bei einem erneuten Zyklus funktionieren. Am besten stellen Sie jedoch sicher, dass der Code den IIS-Recyclingvorgang verursacht. –

Verwandte Themen