【问题标题】:How to determine the session type in asp.net如何确定asp.net中的会话类型
【发布时间】:2015-05-27 17:15:06
【问题描述】:

我想在我的应用程序中将 session 存储模式从 inproc 更改为其他第三方会话提供程序。我已经下载了为它编写的标准provider。我在项目中使用此提供程序,并在web config 中提供了服务器详细信息,会话按预期工作。我面临的问题是,即使我将服务器详细信息更改为任何随机 ip,session 代码仍然有效。在看到无效的ip 或发生其他事情后,我无法确定会话模式是否在内部发生了变化。我想检查我的应用程序正在使用的sessionstate 模式的代码。我该怎么做?

【问题讨论】:

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


    【解决方案1】:

    使用以下内容:

    System.Web.HttpContext.Current.Session.Mode
    

    它返回 SessionStateMode 枚举值,它是以下之一:

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

    • StateServer 模式,将会话状态存储在称为 ASP.NET 状态服务的单独进程中。这可确保会话状态为
      如果 Web 应用程序重新启动并且还会进行会话,则保留此功能
      Web 场中的多个 Web 服务器可用的状态。

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

    • 自定义模式,可让您指定自定义存储提供程序。

    • 关闭模式,禁用会话状态。

    Source: MSDN

    【讨论】:

    • 谢谢。在我的情况下,它显示模式为自定义,这是正确的。是否可以检查自定义提供程序的服务器和端口详细信息?
    猜你喜欢
    • 1970-01-01
    • 2011-01-03
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    • 2017-11-05
    相关资源
    最近更新 更多