asp.net app中的会话变量超时

在我的网络应用程序中,我正在使用一些会话变量,这些变量在我登录时设置:

例如会话(“user_id”)= reader(“user_id”)

我通过我的应用程序使用它.

当会话变量超时时,这会在连接到数据库时引发错误,因为某些查询需要会话(“user_id”).

如何设置会话变量,以便一旦超时到达登录页面,或者至少可以增加可用时间长度?

解决方法

我猜你正在使用表单身份验证.这里的诀窍是确保您的表单身份验证在会话之前到期.

我在这里回答了这个问题:

07000

例如:

配置表单身份验证 – 这会将超时设置为60分钟:

<authentication mode="Forms">
    <forms defaultUrl="~/Default.aspx"
        loginUrl="~/Login.aspx"
        slidingExpiration="true"
        timeout="60" />
</authentication>

将会话到期时间延长到更长时间:

<sessionState 
    mode="InProc" 
    cookieless="false" 
    timeout="70"/>

在你的Login.aspx代码后面你也可以做一个Session.Clear();在分配会话值之前删除过时的会话数据.

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...