Session在Controller中的传递

最近遇到一个问题,就是Session在Controller中传递的时候是空值。

简单做了一个小Demo来验证这件事情。

<span style="font-size:18px;"> GetSessionController getSession = new GetSessionController();
        public ActionResult Index()
        {
            Session["Session1"] = "小明";
            //System.Web.HttpContext.Current.Session["Session2"] = "小红";
            getSession.Index();
            return View();
        }</span>

<span style="font-size:18px;"> public ActionResult Index()
        {
           // string name2 = System.Web.HttpContext.Current.Session["Session2"].ToString();
            string name = Session["Session1"].ToString();
            
            return View();
        }</span>

在一个Controller中调GetSessionController中的Index方法的时候,希望可以用Session来传值,但是,在GetSessionController中的session却获取不到相应的Session值。

暂时不明白mvc中为什么传递session会出现空值,我们引用session时默认引用的是System.Web.Mvc.Controll.session,可能这个session不能传递,所以解决方法就是详细定义session,我们可以定义System.Web.HttpContext.Current.Session可以解决这个问题

这个Session和System.Web.HttpContext.Current.Session问题先保留,我会去查明原因,也希望大家能够给我指点


版权声明:本文为u010924845原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。