Bryan
Bryan

Reputation: 3541

Cancellationtoken in OnAuthorizationAsync

I have the following code:

public class AuthorizeRolesAttribute : TypeFilterAttribute
{
    public AuthorizeRolesAttribute() : base(typeof(AuthorizeRolesFilter))
    {

    }

    public class AuthorizeRolesFilter : IAsyncAuthorizationFilter
    {
        public virtual async Task OnAuthorizationAsync(AuthorizationFilterContext context)
        {

        }
    }
}

I want to use Cancellation token, so I'm trying to override it like this:

public async override Task OnAuthorizationAsync(AuthorizationFilterContext context, CancellationToken ct)
{
}

But I keep getting this error:

No suitable method found to override

Upvotes: 2

Views: 651

Answers (1)

Serhii Kyslyi
Serhii Kyslyi

Reputation: 1823

Just acquire your CancellationToken from the HttpContext.

public Task OnAuthorizationAsync(AuthorizationFilterContext context)
{
    var cancellationToken = context.HttpContext.RequestAborted;
    ...
}

Upvotes: 6

Related Questions