【问题标题】:Usage of Session object in ASP.NETASP.NET 中 Session 对象的使用
【发布时间】:2011-06-08 05:30:17
【问题描述】:

我刚刚获得了一项新任务来引导由其他人创建的网站。但我对 Web 完全陌生。该网站使用 ASP.NET,C#。除了 Session 对象之外,代码本身并不难理解。我不明白它在哪里、如何以及为什么使用它。请有人用一个可能的例子解释 Session 对象的用法吗?

附:这两行是什么意思?

    lblPensValue.Text = sh.pensDec((string)Session["connSTR"], 113, 23);
and
    if ((string)Session["connSTR"] == null)

【问题讨论】:

    标签: c# .net asp.net session


    【解决方案1】:

    Session 用于存储用户在网站上的会话数据。 (此数据存储是每个用户浏览器会话,并且随时会被各种应用程序事件擦除)

    它通常用于在用户对您网站的会话(即访问)中跨多个页面视图存储信息。

    它可以用于在用户会话上下文中运行的代码中的任何地方;在页面内部或在会话上下文中运行的相应应用程序生命周期事件中的含义(例如会话开始)

    至于你的样品;

    第一个,我无法完全解释,因为我不知道函数sh.pensDec()应该做什么。

    第二个是在运行下面的代码之前检查以确保该会话变量中存储了一个值。

    【讨论】:

    • 次要但重要的一点:您无法在BeginRequest 事件处理程序中访问会话。在引发 PostAcquireRequestState 事件之前,该会话将不可用。
    【解决方案2】:

    HTTP 本质上是无状态的。 WebServer 在处理请求并发送回客户端后不知道任何细节。因此,任何后续请求都类似于对服务器的新请求。

    为了使服务器能够记住并随后识别它为客户端提供的服务,ASP.NET 使用了各种机制,Session 就是其中之一。

    会话是按用户创建的。因此,在您的页面中,您正在获取正在存储它的“connSTR”。每当后续请求来自同一用户时,通过 key 查询 Session

    Session["connSTR"]
    

    你会取回它的价值。由于 Session 是一个对象,因此在您的代码中将其转换为字符串。

    【讨论】:

      【解决方案3】:
      (string)Session["connSTR"] // Return value from session and casting to string
      

      你需要了解Session,查看这个ASP.NET Session State Overview

      【讨论】:

        【解决方案4】:

        ASP.NET 会话状态使您能够在用户浏览 Web 应用程序中的 ASP.NET 页面时为用户存储和检索值。

        ASP.NET Session State Overview

        ASP.NET Session State Examples

        【讨论】:

          【解决方案5】:
          猜你喜欢
          • 2017-02-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-07-17
          • 2014-02-27
          • 1970-01-01
          • 2011-08-30
          • 1970-01-01
          相关资源
          最近更新 更多