gpt4 book ai didi

asp.net - 对启动、全局、应用程序和 session 的困惑

转载 作者:行者123 更新时间:2023-12-03 21:39:55 25 4
gpt4 key购买 nike

我试图了解存储和实例化应用程序(即每个用户都可以使用的对象)和 session 级别(创建的对象仅对用户的 session 可用)变量的各种方法。另外,OWIN 如何适应所有这些?

  • Global.asax.cs - 这可以包含一堆不同的方法。我相信 Application_Start 只在第一个请求期间被调用。然而,这里有一些候选方法来填充 session 级变量(例如 Session_Start 和 Application_BeginRequest)。这样做的标准方法是什么?
  • 还有 OWIN 使用的 Startup 类。我知道 OWIN 允许您存储应用程序级别的变量,但是您为什么不直接使用可从 Global.asax.cs 访问的 HttpApplicationState Application 变量来完成此操作?另外 - OWIN 可以处理 session 变量吗?
  • 最佳答案

    "I believe that Application_Start is only called during the first request."



    仅用于调用 Web 应用程序后的第一个请求。例如,在部署、ApplicationPool Recycling、重新启动或退出 sleep 之后就是这种情况。

    假设有 3 个用户访问您的 Web 应用程序。 Application_Start只会调用其中一个,特别是第一个访问它的人。因此它不适合填充用户特定的 session 值。

    However, there are a few candidates here for methods to populate session level variables (e.g. Session_Start and Application_BeginRequest). What is the standard way of doing this?



    过去我曾与 Session_Start 合作过在众多项目中初始化用户特定的 session 值(如默认值),并且从未遇到过问题。

    关于asp.net - 对启动、全局、应用程序和 session 的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23833832/

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