我已经使用了下面的这种方法,在会话超时后您将自动将其导向登录页面,但问题是,即使您正在执行某些操作,您将被重定向。重定向到会话超时后登录
是否有处理会话超时任何方法?
顺便说一句我正在使用ASP.Net C#
谢谢! (^ _ ^)b
我已经使用了下面的这种方法,在会话超时后您将自动将其导向登录页面,但问题是,即使您正在执行某些操作,您将被重定向。重定向到会话超时后登录
是否有处理会话超时任何方法?
顺便说一句我正在使用ASP.Net C#
谢谢! (^ _ ^)b
尝试下面的代码:
if(session["YourSessionName"].ToString()=="" or Session["YourSessionName"] == null)
{
Response.Redirect("~/Login.aspx");
}
即自动重定向看起来并不像一个好主意。
Session_End事件(在global.asax中)将在会话结束时触发,您可以重定向到登录页面;但是,请记住,如果您使用的是进程内会话状态(默认情况下),它将仅启动。
如果您使用的进程外状态选项(状态服务器或SQL)之一,Session_End中不火,你将不得不使用一个HttpModule;试试这个 - http://www.codeproject.com/Articles/21156/ASP-NET-HttpModule-for-handling-session-end-with-S
希望帮助
用户按照web.config文件中值:
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="1" defaultUrl="~/" />
</authentication>
<sessionState mode="InProc" customProvider="DefaultSessionProvider" timeout="1">
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
这里我使用了默认会议提供商,但你可以使用自己的自定义会话提供商和超时您想要的值,但在表单选项卡和sessionState标记中应该相同。
它正在为我工作,因为你正在期待。
问候, 尼廷·乔希
,我不使用形式的认证。 @ _ @ – user3035024
,如果你是董一些东西,犯规需要服务器的交互,那么你一定会得到不幸的是重定向 – Cris