无法访问MVC 5中另一个控制器中的一个控制器中声明的会话值

时间:2018-04-06 09:22:49

标签: c# asp.net asp.net-mvc-5

因此,在我的MVC应用程序中,我要求用户登录,由AccountController处理,

成功登录后,我将一些额外的属性保存到会话中,如此

Member member = dbContextRead.Members.Include(m => m.Location).SingleOrDefault(e => e.AspNetUserId == user.Id);
System.Web.HttpContext.Current.Session["member"] = member;
System.Web.HttpContext.Current.Session["location"] = member.Location;

但是当我尝试访问另一个控制器中的会话并获取值时,它返回null。

var member = (System.Web.HttpContext.Current.Session["member"] as Member) ?? dbContext.Members.Single(m => m.AspNetUserId == user.Id);

添加也是一件好事,如果我在两个不同的位置检查会话ID,它们会返回不同的会话ID和不同的实例。

为什么?我错过了什么,应该在某个地方设置吗?

0 个答案:

没有答案