Problème Nouvelle session
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:
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);
}
} |
Code:
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> |
MErci pour votre aide