Следующий класс создает настраиваемый фильтр действий с именем [SessionTimeout]:
public class SessionTimeoutAttribute : ActionFilterAttribute
{
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly ISession _session;
public SessionTimeoutAttribute(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor;
_session = _httpContextAccessor.HttpContext.Session;
}
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContext ctx = _httpContextAccessor.HttpContext;
if (!ctx.User.Identity.IsAuthenticated)
{
filterContext.Result = new RedirectResult("~/Account/Login");
return;
}
base.OnActionExecuting(filterContext);
}
}
Как сейчас реализовано, когда я иду украшать класс с помощью [SessionTimeout], он также запрашивает у меня параметр для конструктора.
Я хотел бы избежать этого, если это возможно.
Кто-нибудь может помочь мне? Спасибо.
filterContext
. - person Daniel A. White   schedule 16.11.2019