2010-03-10 3 views
1

je suis en train de stocker un objet en session ..asp.net mvc essayant d'utiliser session, mais ControllerContext est nul

dans un contrôleur, je crée l'objet et le mettre en session.

MyObject _o = new MyObject(); 
Session["MyObject"] = _o; 
MyObject _oo = (MyObject)Session["MyObject"]; // added for testing purposes, is not null 

Je peux récupérer l'objet de la session juste à l'intérieur du même contrôleur.

puis je redirige vers une méthode d'action sur un autre contrôleur, et dans un contrôleur de base j'essaie d'accéder à ControllerContext.HttpContext.Session et il est toujours null.

if(_obj == null) 
{ 
    _obj = (MyObject)Session["MyObject"]; // always null 
} 

des idées pourquoi?

merci :-)

+0

Attendez, MyObject est-il un objet ou un type? Il est utilisé en tant qu'objet la première fois, mais en l'utilisant comme type de conversion la deuxième fois. –

+0

Je viens de changer le nom de l'objet pour effacer les choses, merci –

+0

Pas assez d'informations dans votre question. D'après ce que vous décrivez, cela devrait fonctionner correctement. –

Répondre

1

Lors de l'accès à l'objet Session? HttpContext initialisé après Controller.Initialize()