您的位置:首页 > 编程语言 > ASP

ASP.NET session时间的设置方法

2010-03-24 00:29 761 查看
asp.net Session的默认时间设置是20分钟,即超过20分钟后,服务器会自动放弃Session信息.当我们在asp.net程序中打开webconfig的时候,可以看到一段如下的代码:

 

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秒

 

ASP.NET session时间的设置方法二: 不过有时修改配置文件不能很好的解决这个问题。你可以在公共程序里Global.asax里修改。我们在找到global.asax中找到 Session_Start后 按如下设置一下就可以了。

 

void Session_Start(object sender, EventArgs e)

 

{

 

// 在新会话启动时运行的代码

 

Session.Timeout = 600;

 

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息