【问题标题】:SessionState stateConnectionString and sqlConnectionStringSessionState stateConnectionString 和 sqlConnectionString
【发布时间】:2011-10-19 07:22:49
【问题描述】:

我们想在 SQL Server 中存储会话。我们有 sessionState mode="SQLServer"。我得到了一个示例连接字符串,如下所示。在此它同时具有 stateConnectionString 和 sqlConnectionString。

问题:为什么mode="SQLServer"时需要stateConnectionString?

<sessionState mode="SQLServer" 
cookieless="false" timeout="20" 
stateConnectionString="tcpip=XXX.XX.XXX.XXX:42424" 
sqlConnectionString="data source=XXX-FFFF-sql2k8,2025;
Initial   Catalog=AspState_XX_3_0;user id=XXX;password=XXX" 
allowCustomSqlDatabase="true" 
sqlCommandTimeout="1200"/>

注意 1:SQLServer 模式 将会话状态存储在 SQL Server 数据库中。使用此模式可确保在重新启动 Web 应用程序时保留会话状态,并使会话状态可用于 Web 场中的多个 Web 服务器。要使用 SQLServer 模式,您必须首先确保在 SQL Server 上安装了 ASP.NET 会话状态数据库。您可以使用 Aspnet_regsql.exe 工具安装 ASP.NET 会话状态数据库

注意 2:StateServer 模式将会话状态存储在一个进程中,称为 ASP.NET 状态服务,它与 ASP.NET 工作进程或 IIS 应用程序池是分开的。要使用 StateServer 模式,您必须首先确保 ASP.NET 状态服务正在用于会话存储的服务器上运行。要在 Web 场中使用 StateServer 模式,您必须在 Web 配置的 machineKey 元素中为属于 Web 场的所有应用程序指定相同的加密密钥。

【问题讨论】:

    标签: c# .net asp.net vb.net sql-server-2008


    【解决方案1】:

    AFAIK 在 SQL Server 中存储会话状态时,您可以跳过 StateConnectionString。

    我没试过,不过这里好像证实了:http://support.microsoft.com/kb/317604

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      • 2011-06-24
      相关资源
      最近更新 更多