2009-03-09 10 views
-2

Ich habe Benutzersteuerung auf einer ASP.NET-Webseite, die eine GridView und eine Optionsfeldauswahl enthält.Warum scheint sich meine Sitzungsvariable in ASP.NET zu leeren?

In der zugrunde liegenden mittleren Ebene habe ich einen Thread, der zur Datenbank geht und dann ein Ereignis auslöst, um zu sagen "Ich habe ein paar Daten", mein Benutzersteuerelement handhabt dieses Ereignis und setzt eine Sitzungsvariable.

Dies funktioniert und ich kann sehen, das Ereignis behandelt wird und die Session-Variable erhält die neuen Daten.

aber wenn ich diese Session-Variable zu verwenden, wenn der ausgewählte Index des Wählers Radio-Taste, um die Session-Variablen Berichte als „Nichts“ ändert

ich, dass die offensichtliche dafür gesorgt haben (dh Rechtschreibung, schaltet Sessions auf etc) sind richtig.

Die GridView- und Radio Button-Selector sind im selben Update-Panel gekapselt.

Antwort

2

Überprüfen Sie, ob Ihr UpdatePanel - updatemode auf 'Conditional' gesetzt ist? auch Kind als Auslöser? Ich würde zunächst damit beginnen, die Seitenladung zu stoppen, um zu sehen, was von da an passiert. Suchen Sie nach allen Orten, an denen Sie diese Sitzungsvariable auffüllen und stoppen Sie sie. Sie werden überrascht sein, ich habe oft festgestellt, dass der Seitenlebenszyklus verwirrend ist, obwohl ich dachte, dass ich ihn verstanden habe. Alt - poste etwas Code und wir können durchgehen.

0

Ja, hört sich fast wie ein Problem mit der Reihenfolge der Operationen oder nicht für Postback auf einer Seite laden oder etwas?

Wie von JamesM vorgeschlagen, sollte das Ausführen Ihrer Website im Debug-Modus wirklich helfen, das Problem zu identifizieren. Sie können Ihr Überwachungsfenster aufrufen und für die gesuchte Sitzungsvariable einstellen, dann Haltepunkte überall festlegen und den Wert an jedem Stopp überprüfen, um den Code zu teilen und zu erobern.

Verwandte Themen