标题-asp.net-mvc5自动注销如何在一段时间后在asp.net-mvc5中使表单自动注销并自动重定向到登录页面
您需要在Login
方法上创建一个会话变量。会话将由Session["Userid"]=Userid;
创建。然后,您需要创建自定义属性来检查会话超时。您需要遵循的步骤是:
将以下代码复制并粘贴到该文件中。
公共类SessionTimeOutAttribute:ActionFilterAttribute{公共重写void OnActionExecuting(ActionExecutingContext filterContext){
Controller controller = filterContext.Controller as Controller;
HttpContext httpContext = HttpContext.Current;
var rd = httpContext.Request.RequestContext.RouteData;
string currentAction = rd.GetRequiredString("action");
string currentController = rd.GetRequiredString("controller");
if (HttpContext.Current.Session["UserId"] == null)
{
filterContext.Result = new RedirectResult("~/Account/Login?ReturnUrl=" + currentController + "/" + currentAction);
return;
}
base.OnActionExecuting(filterContext);
}
}
在每个控制器上添加[SessionTimeOut]属性。
[SessionTimeOut]
公共类ControllerName:控制器{