Asp.net的几种会话状态模式(SessionState Mode)
不计Custom的话,Asp.net的会话状态模式(SessionState Mode)有四种类型。
一、Off模式
即关闭Session。
全站关闭Session可在Web.Config文件中的<system.web>节中写入:
<sessionState mode="off">
要在某个页面上关闭Session,可在页面上添加:
<%@ Page EnableSessionState="false" %>
二、InProc模式(缺省模式)
如果未在Web.config文件中配置SessionState Mode,默认即是InProc模式。
如果要定制InProc模式的参数,需要写入Web.config文件,例如:
<sessionState mode="InProc" cookieless="false" timeout="20" />
cookieless设置是否允许不使用Cookie,timeout设置超时时间,单位为分钟。
InProc模式允许无Cookie的会话,以及在服务器之外存储会话数据。
如果设置为允许无Cookie,不管Cookie还是隐藏表单字段都用不着了,即使网页中没有表单也能加入会话。
InProc模式依赖于 ASP.NET进程, 当IIS进程崩溃或者重启时,保存在进程中的会话状态会丢失。
三、StateServer模式
StateServer模式是将会话数据存储到单独的内存缓冲区中,由一个Windows服务“ASP.NET State Service ”(aspnet_state.exe)来控制这个缓冲区,需要设置stateConnectionString:
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" timeout="20" />
或本地存储
<sessionState mode="StateServer" cookieless="false" timeout="300"></sessionState>
StateServer模式的优点是独立于IIS进程,IIS应用程序的重启不影响会话数据。
四、SQLServer模式
使用SQL Server来保存Session,需要先创建ASPState数据库。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
2016-08-22 C# HttpWebRequest GET HTTP HTTPS 请求
2014-08-22 JS中call、apply的用法说明
2014-08-22 js 与或运算符 || && 妙用