ASP.NET中有哪些不同类型的会话

ASP.NET中有哪些不同类型的会话,asp.net,session,Asp.net,Session,这里我想知道ASP.NET中不同类型的会话,而不是会话状态。这是采访中提出的问题 典型会话基于cookie。服务器会给您一个,您会在每次请求时将其发送到服务器。但是,Asp.net允许您使用不同类型的会话,也可以使用无Cookie会话。然后,会话id“存储”在URL地址中。如果使用不当,这种技术非常危险。asp.net中有三种类型的会话 进程内会话 进程外会话 SQl server会话 肯定需要OP的更多澄清。我觉得这些术语的使用是相互转换的 网络本质上是无状态的。为了克服这一问题,ASP.N

这里我想知道ASP.NET中不同类型的会话,而不是会话状态。这是采访中提出的问题

典型会话基于cookie。服务器会给您一个,您会在每次请求时将其发送到服务器。但是,Asp.net允许您使用不同类型的会话,也可以使用无Cookie会话。然后,会话id“存储”在URL地址中。如果使用不当,这种技术非常危险。

asp.net中有三种类型的会话

  • 进程内会话
  • 进程外会话
  • SQl server会话

肯定需要OP的更多澄清。我觉得这些术语的使用是相互转换的

网络本质上是无状态的。为了克服这一问题,ASP.Net提供了几种状态管理选项,如viewstate、controlstate等。会话状态就是这些选项之一

ASP.NET会话状态支持会话变量的多个存储选项。每个选项都被标识为会话状态模式。有四种模式类型或仅模式。在进程模式、状态服务器模式、SQL Server模式、自定义模式和关闭模式下。这些是模式。进程模式下使用内存作为会话存储。状态服务器模式将状态服务器用作会话存储。等等此外,当通过web.config指定模式时,还需要一些附加参数,如connectionstring、timeout等。其中一个参数为“cookieless”,默认值为“AutoDetect”。如果指定为“true”,它将在url中嵌入ID。(如@naivists所解释)。Cookieless选项可用于任何模式


这就是ASP.Net会话的全部内容。我觉得在互换使用的术语状态、模式、模式类型、存储等方面存在一些混乱。除此之外,不应该有其他单独的东西作为“会话类型”。

有三种会话,它们如下所示

  • 正在进行中

  • 输出进程

  • Sql server会话

  • 它们存放的地方

  • inproc—存储在web.config中的默认值

  • outproc-存储在服务器端

  • Sql server-存储在数据库中

  • asp.net中有以下类型的会话管理,可以在web.config文件中定义

    Session mode=“inproc”…表示会话将存储在应用程序内的Web服务器上 session mode=“outproc”…表示会话将存储在应用程序外部的服务器上 session mode=“stateserver”…表示会话将存储在数据库的临时内存中
    会话模式=“sqlserver”…表示会话将永久存储在数据库中。

    会话状态模式有5种类型:

    InProc模式:将会话状态存储在Web服务器的内存中。这是默认设置

    状态服务器模式:它将会话状态存储在一个称为ASP.NET状态服务的单独进程中。这可确保在重新启动Web应用程序时保留会话状态,并使会话状态可用于Web场中的多个Web服务器

    SQLServer模式将会话状态存储在SQLServer数据库中。这可确保在重新启动Web应用程序时保留会话状态,并使会话状态可用于Web场中的多个Web服务器

    自定义模式:允许您指定自定义存储提供程序

    关闭模式:禁用会话状态


    检查细节

    我只是想说清楚。正确答案不是“InMemory”、“SQLServer”和“StateService”?不是会话存储或会话状态。我需要知道会话类型。请在下面的会话存储链接中查找有关会话的更多详细信息。显然(见问题评论)OP想要其他东西。这个答案比公认的答案好,因为它给出了每种类型的解释。