为什么会话在控制器内的方法中为null

时间:2016-03-07 03:33:18

标签: asp.net-mvc session c#-4.0 session-variables

我正在创建一个MVC 5应用程序。其中抓取一个对象数组作为json然后我反序列化它创建一个新对象,然后我将对象存储在会话中。我可以在局部视图中访问会话,它工作正常,但是当我点击该页面上的链接时,它将我引导到同一个控制器中的一个方法,我尝试检索会话但它是null。任何人都知道为什么会这样。 我将它存储在像这样的控制器中的方法中并返回视图,驱动程序是一个对象

HttpContext.Session["allInfo"] = driver;

HttpContext.Session["loggedIn"] = true;

然后我在局部视图中检查它并创建动态链接。它工作正常,直到这里我记录为真,allInfo不为空

@if (HttpContext.Current.Session["loggedIn"] != null)
{
    <li>@Html.ActionLink("Other Links", "Index", "Home")</li>
    <li>@Html.ActionLink("Other Links", "About", "Home")</li>
    <li>@Html.ActionLink("Other Links", "Contact", "Home")</li>

}

页面中的链接会将用户导航到不同的视图。在控制器中我尝试检索会话但它现在为空。为什么会这样?

driver = (Driver) HttpContext.Session["allInfo"];

0 个答案:

没有答案