Я пытался работать с тайм-аутом сеанса с помощью Actionfilterattribute и функции onexecuting в конфигурации фильтра и вызвал атрибут поверх всех моих контроллеров.После выполнения приложения по истечении времени сеанса на странице ничего не происходит.Вместо этого, если я нажимаю что-то в моем приложении, оно перенаправляет меня на страницу выхода из системы.Мне нужно, чтобы это произошло автоматически.Страница должна обновиться автоматически и перенаправить на страницу выхода из системы, если сеанс истек.
Мой код конфигурации фильтра приведен ниже:
public class SessionTimeoutAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContext context = HttpContext.Current;
if (context.Session != null)
{
if (context.Session.IsNewSession)
{
string sessionCookie = context.Request.Headers["Cookie"];
if (sessionCookie != null)
{
FormsAuthentication.SignOut();
string redirectTo = "";
if (!string.IsNullOrEmpty(context.Request.RawUrl))
{
HttpContext.Current.Session.Abandon();
redirectTo = string.Format("~/Login/Logout", HttpUtility.UrlEncode(context.Request.RawUrl));
//filterContext.Result = new RedirectResult(redirectTo);
return;
}
}
}
}
base.OnActionExecuting(filterContext);
}
}
Web.config также установлен как:
<sessionState mode="InProc" timeout="2" />
кто-то, пожалуйста, помогите мне в этом ... Чтоя скучаю?