Wie bekomme ich Parameter vom Authrizationhandler .net Core?
Ich verwende den Autorisierungs-Handler, um die benutzerdefinierte Autorisierung in meinem Controller in .NET Core zu speichern. Wie kann ich die Parameter von der Steuerung abrufen und an den Autorisierungs-Handler übergeben?
In der alten .net kann ich die Parameter von Httpcontext Anfrage Parameter wie folgt erhalten
var eventId = filterContext.RequestContext.HttpContext.Request.Params["id"];
Ich bin nicht sicher, wie ich es in .NET Core erreichen kann
enter code here
public class HasAdminRoleFromAnySiteRequirement : AuthorizationHandler<HasAdminRoleFromAnySiteRequirement>, IAuthorizationRequirement
{
public HasAdminRoleFromAnySiteRequirement()
{
}
protected override Task HandleRequirementAsync(AuthorizationHandlerContext context,
HasAdminRoleFromAnySiteRequirement requirement)
{
//need to call get param from controller to used in the validation
// something like this
//var eventId = filterContext.RequestContext.HttpContext.Request.Params["id"];
// I tried the suggestion below but I can't get the parameter from routedata
// var mvcContext = context.Resource as Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext;
return Task.FromResult(0);
}
}