Bonjour à tous,
Après deux jours de recherche et sans réponse , je ne comprends pas pourquoi mon application web génère une nouvelle session environ 30 sec après la connexion sachant que mon TimeOut est de 1440.
Voici la fonction qui me permet d'affiche ma page de TimeOut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public class SessionExpireFilterAttribute : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { HttpContext ctx = HttpContext.Current; var SessionState =(SessionStateSection)WebConfigurationManager.GetSection("system.web/sessionState"); ctx.Session.Timeout = Convert.ToInt32(SessionState.Timeout.TotalMinutes); // check if session is supported if (ctx.Session != null) { // check if a new session id was generated if (ctx.Session.IsNewSession) { // If it says it is a new session, but an existing cookie exists, then it must // have timed out string sessionCookie = ctx.Request.Headers["Cookie"]; if ((null != sessionCookie) && (sessionCookie.IndexOf("ASP.NET_SessionId") >= 0)) { ctx.Response.Redirect("~/Erreur/SessionTimeOut"); } } } base.OnActionExecuting(filterContext); } }MErci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <sessionState timeout="1440" mode="InProc" customProvider="DefaultSessionProvider"> <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>
Partager