2010-03-10 72 views
1

我試圖存儲對象的會話..asp.net的MVC嘗試使用會話,但controllercontext是空

在一個控制器中,我創建對象並把它放在會議。

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

我可以在同一控制器中從會話中檢索對象。

然後我重定向到另一個控制器上的操作方法,並在基本控制器中嘗試訪問ControllerContext.HttpContext.Session,它始終爲空。

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

有什麼想法爲什麼?

感謝:-)

+0

等待,MyObject是一個對象還是一個類型?它第一次用作對象,但是第二次將它用作投射類型。 – 2010-03-10 20:28:16

+0

我剛剛更改了對象名稱以清除內容,謝謝 – 2010-03-10 20:31:17

+0

沒有足夠的信息在您的問題。從你描述的應該可以正常工作。 – 2010-03-10 21:59:26

回答

1

何時訪問會話對象?

HttpContext在Controller.Initialize()後初始化。