Variables d'État de Session ne fonctionne pas

Je suis en train d'écrire un ASP.NET C# site web qui a besoin d'accéder à des données à partir d'une base de données et l'afficher à l'utilisateur pour la visualisation et l'édition. Les données spécifiques, il accède est basée sur l'utilisateur qui se connecte, et j'ai besoin pour plusieurs utilisateurs d'être en mesure d'utiliser le site simultanément, la visualisation et l'édition de données différentes, comme ils le font. Je suis tombé sur le concept d'États de la Session, et après beaucoup de lecture et non pas comme beaucoup de compréhension. J'ai rencontré un problème.

Dans ma page par défaut, je fais cela pour créer une variable de Session:

Session.Add("UserData",userdata);

J'ai aussi essayé ceci:

Session["UserData"] = userdata;

Puis dans une page ultérieure, je fais ça pour essayer de l'appeler:

object myobject = Session["UserData"];

Cela me donne une erreur, en disant que Session["UserData"] n'est pas définie à une instance d'un objet. C'est la méthode que tout le monde semble être à l'aide, est-il quelque chose que je suis absent?

Mon site est configuré sur IIS pour avoir l'État de Session en Mode "En cours", mais la plupart des gens semblent régler manuellement à l'aide de leur site web.fichier de configuration. Cependant, lorsque j'essaie de le faire dans mon web.fichier de config je suis toujours accueilli avec un "non reconnu section de configuration". Mon compilateur ne sait pas ce que c'est:

<sessionstate mode="inproc"/>

MODIFIER, plus détaillé code:

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

Session["UserData"] = userdata;

plus tard...

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

Cela renvoie l'erreur de Session["UserData"] est null.

Où avez-vous initialiser les données de l'utilisateur? Est-il possible il est nul lorsque vous appelez Ajouter?
où vous avez la Session["UserData"] = userdata; , où en êtes-vous affectation userdata et vous pouvez coller le code de sorte que nous pouvons voir. Session["UserData"] doit travailler ou devrais-je dire avoir une valeur si vous avez assigné correctement..
"userdata" est pseudo-code ici, je suis sûr à 100% que cette variable contient des données avant que j'appelle tout de ce code.
c'est une classe personnalisée, cependant, sont des variables de session restreinte aux seules classes de base?
Vous n'avez pas désactivé les cookies pensez-vous?

OriginalL'auteur Andrew | 2011-12-21