GPService
GPService

Reputation: 329

I use "HttpContext.Current" but debug got error "HttpContext' does not contain a definition for 'Current"

[.Net Core 3.1]

I need to set SessionTimeout redirect to login page. How can I use HttpContext.Current? This is my code

using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.AspNetCore.Http;

namespace DemoMVCLogin.Class
{
  public class SessionManagement
  {

  }


  public class SessionTimeoutAttribute : ActionFilterAttribute
  {
      public override void OnActionExecuting(ActionExecutingContext filterContext)
      {
        HttpContext httpContext = HttpContext.Current;
        base.OnActionExecuting(filterContext);
      }
  }

}

Upvotes: 1

Views: 602

Answers (1)

Nkosi
Nkosi

Reputation: 246998

HttpContext.Current is no longer part of .Net Core.

Access the HttpContext via ActionContext.HttpContext property

Gets or sets the HttpContext for the current request.

public class SessionTimeoutAttribute : ActionFilterAttribute {
    public override void OnActionExecuting(ActionExecutingContext filterContext) {
        HttpContext httpContext = filterContext.HttpContext;
        base.OnActionExecuting(filterContext);
    }
}

Upvotes: 3

Related Questions