Session-Variablen nicht funktionieren

Schreibe ich eine ASP.NET C# - Website, die Zugriff auf Daten aus einer Datenbank und zeigt Sie dem Benutzer zur Anzeige und Bearbeitung. Die spezifischen Daten es zugreift, basiert auf den Benutzer, der sich anmeldet, und den brauche ich für mehrere Nutzer verwenden zu können die Seite gleichzeitig anzeigen und Bearbeiten von verschiedenen Daten, wie Sie dies tun. Ich stolperte über das Konzept der Session-Staaten, und nach viel Lesen und nicht so viel Verständnis. Ich habe auf ein problem stoßen.

In meiner Standard-Seite, die ich tun, um eine Session-variable erstellen:

Session.Add("UserData",userdata);

Habe ich auch schon versucht:

Session["UserData"] = userdata;

Dann in einer späteren Seite, ich mache das, um zu versuchen, es zu nennen:

object myobject = Session["UserData"];

Dieser gibt mir eine Fehlermeldung, die besagt, daß Session["UserData"] ist nicht auf eine Instanz eines Objekts. Dies ist die Methode, die jeder scheint zu verwenden, ist es etwas, was ich bin fehlt?

Meine Website " konfiguriert ist, die auf IIS zu der Session-State-Modus auf "In Bearbeitung", aber die meisten Leute scheinen, um dies manuell mit Ihrer web.config-Datei. Jedoch, wenn ich versuche, das in meiner web.config Datei, die ich immer begrüßt mit "unbekannter Konfigurationsabschnitt". Mein compiler nicht weiß, was das ist:

<sessionstate mode="inproc"/>

BEARBEITEN, detaillierte code:

MyClass userdata = new MyClass();
userdata.name = "myname";
userdata.number = 5;

Session["UserData"] = userdata;

später...

MyClass mydata = (MyClass)(Session["UserData"]);

Dieser gibt den Fehler zurück, dass Session["UserData"] null ist.

Wo sehen Sie initialisieren Benutzerdaten? Ist es möglich, ist es null, wenn Sie Anruf Hinzufügen?
wo haben Sie Session["UserData"] = "Benutzerdaten"; ,, wo sind Sie zuweisen Benutzerdaten an und können Sie fügen Sie den code, so dass wir sehen können. Session["UserData"] sollte funktionieren, oder sollte ich sagen einen Wert haben, wenn Sie Ihnen zugeordnet haben es richtig..
"userdata" ist Pseudo-code hier, ich bin mir 100% sicher, dass diese variable enthält Daten, bevor ich Sie rufen diesen code.
es ist eine benutzerdefinierte Klasse, obwohl, sind die session-Variablen beschränkt, um nur die grundlegenden Klassen?
Sie nicht haben cookies deaktiviert werden?

InformationsquelleAutor Andrew | 2011-12-21

Schreibe einen Kommentar