在类和控制器MVC4之间设置和检索会话变量

时间:2015-11-29 23:22:12

标签: asp.net-mvc-4 oracle11g dataset

在我的MVC应用程序中,我有一个具有函数的类,我将值设置为会话变量

namespace Staffs.Libs
{
    public class ClassA
    {`.......`
   HttpContext.Current.Session["SessionID"] = intsessionId;
}
}

需要在另一个控制器中获得此会话的价值

 [HttpGet]
     [AllowAnonymous]
     public ActionResult PrintDirectorytoPDF(string title)
     {

         string _SessionID = HttpContext.Session["SessionID"].ToString();
}

但这是抛出错误=“对象引用未设置为任何对象的实例” 我做错了什么?

1 个答案:

答案 0 :(得分:0)

如果您使用控制器中的操作方法,那么您编写的内容应该可以正常工作。否则试试:

var sessionId = Session["SessionID"] as string;

但我的猜测是,您的问题实际上是会话不包含SessionID值,因此您在尝试ToString()时会引发空指针查看SessionID的会话时找到的null。