sessionState详解

时间:2023-03-09 04:42:19
sessionState详解

asp.net Session的默认时间设置是20分钟,即超过20分钟后,服务器会自动放弃Session信息.

当我们在asp.net程序中打开web.config的时候,可以看到一段如下的代码:

Asp.net程序代码:

<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="20" 
/>

上面一段的代码就是配置应用程序是如何存储Session信息的了.

其中的timeout="20" 即为asp.net session的默认时间.需要更改时间我们在此处填上不同的数值就可以了,默认单位为分.

sessionState节点属性:

<sessionState
mode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="number of minutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sql connection
string"
stateNetworkTimeout="number of
seconds"
/>

必须有的属性是

mode    设置将Session信息存储到哪里 
    
Off             
设置为不使用Session功能 
   
InProc          设置为将Session存储在进程内,就是ASP中的存储方式,这是默认值。 
     StateServer 设置为将Session存储在独立的状态服务中。 
    
SQLServer    设置将Session存储在SQL Server中

可选的属性是:
cookieless 设置客户端的Session信息存储到哪里
   
ture         使用Cookieless模式
   
false        使用Cookie模式,这是默认值。 
    timeout    设置经过多少分钟后服务器自动放弃Session信息。默认为20分钟 
  
stateConnectionString    设置Session信息存储在状态服务中时使用的服务器名称和端口号,例如:"tcpip=127.0.0.1:42424”。当mode的值是StateServer是,这个属性是必需的。
  
sqlConnectionString      设置与SQL Server连接时的连接字符串。当mode的值是SQLServer时,这个属性是必需的。 
  
stateNetworkTimeout    设置当使用StateServer模式存储Session状态时,经过多少秒空闲后,断开Web服务器与存储状态信息的服务器的TCP/IP连接的。默认值是10秒