现在的位置: 首页 > 综合 > 正文

asp.net Session 保存时间设置

2013年10月08日 ⁄ 综合 ⁄ 共 1117字 ⁄ 字号 评论关闭

Asp.net Session的默认时间设置是20分钟,即超过20分钟后,服务器会自动放弃Session信息。但如果我们想改变Session 保存时间时有如下几种方法:

方法一:

在Web.config 里配置: 找到Web应用程序的根目录,打开Web.Config文件,找到如下段落:

1 sessionState  mode="InProc"
2   stateConnectionString="tcpip=192.168.0.1:803"
3   sqlConnectionString="data
source=127.0.0.1;Trusted_Connection=yes"
4   cookieless="false"
5   timeout="120"/>

假如web.config 里没有此节点:即找到节点:在其插入 以上节点如图示:点击查看大图

< sessionState>节点参数详细解释如下:
必备属性:

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:803”。当mode的值是StateServer是,这个属性是必需的。
sqlConnectionString: 设置与SQL Server连接时的连接字符串。例如"data source=localhost;Integrated Security=SSPI;

Initial Catalog=northwind"。当mode的值是SQLServer时,这个属性是必需的。
stateNetworkTimeout 设置当使用StateServer模式存储Session状态时,经过多少秒空闲后,断开Web服务器与存储状态信息的服务器的TCP/IP连接的。默认值是10秒钟。

如果觉得这么多的参数一时理解不过来?我们可以直接在 节点中插入:

即可。

方法二:

在公共程序里Global.asax里修改: Global.asax中找到 Session_Start后 按如下设置一下就可以了。

1

抱歉!评论已关闭.