gpt4 book ai didi

asp.net-mvc - 为什么我的 session 变量在构建 Controller 时不可用?

转载 作者:行者123 更新时间:2023-12-03 23:20:04 26 4
gpt4 key购买 nike

尝试从构造函数获取存储在我的 Session["objectName"] 上的信息时使用 ASP.NET MVC,我看到尚未设置 Session,但是一旦构造了 Controller ,则 Session 包含正确的信息。

public class ABCController : Controller
{
public ABCController() { var tmp = Session["Whatever"]; } //This line is null
//But I know it has information

public ActionResult Index() { var tmp = Session["Whatever"]; } //This works fine
}

谢谢

最佳答案

覆盖 初始化 Controller 基类的方法。请求上下文被传递给这个方法。 session 上下文是请求上下文的一部分。

    protected override void Initialize(System.Web.Routing.RequestContext requestContext)
{
base.Initialize(requestContext);
var tmp = requestContext.HttpContext.Session["Whatever"];
}

在创建 Controller 之后和调用操作方法之前调用此方法。

关于asp.net-mvc - 为什么我的 session 变量在构建 Controller 时不可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1424548/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com