2017-10-09 78 views
0

我正在一個MVC應用程序,我必須爲訪問一定時間的用戶存儲唯一的ID,所以我在我的MVC應用程序中使用Session,但whenevr我嘗試在我的會話中設置一個值,我得到一個空例外。不知道爲什麼,我試過System.NullRefrenceException嘗試在MVC中設置會話

HttpContext.Session["demo"] = "name"; 

Session["demo1"] = "username"; 

我嘗試了上述方法,但我無法在MVC應用程序中設置會話。

+0

上面的代碼是在任何'Action'或簡單的類文件中。 –

+0

你在哪裏設置會話值?在控制器? –

+1

這種行爲可能有以下幾種原因:也許您沒有加載任何會話狀態模塊,因此您根本無法使用會話,或者您嘗試在模塊初始化之前訪問會話狀態,即在ASP.net管道中太早或者你失去了與HTTP上下文的親和力,例如通過意外切換到另一個線程。這也可能取決於您使用的是哪個版本的ASP.net以及您的服務器是如何配置的。 – Peit

回答

0

我在構造函數上調用了這個方法,這就是我無法獲取會話的原因,一旦我將代碼移動到Action中,一切工作正常。 謝謝大家