可以使用 ActionExecutedContext 对象来获取路由名称和参数。

以下是一个示例:

public class CustomActionFilterAttribute : ActionFilterAttribute
{
    public override void OnActionExecuted(ActionExecutedContext context)
    {
        var routeData = context.HttpContext.GetRouteData();
        var controller = routeData.Values['controller'];
        var action = routeData.Values['action'];
        var parameter = context.ActionArguments['parameterName'];

        // 使用路由名称和参数执行所需操作
    }
}

在上面的示例中,我们首先获取当前请求的路由数据。然后,我们使用路由数据对象来获取控制器名称、操作名称和参数值。最后,我们可以使用这些值来执行我们需要的操作。

请注意,上面的示例假定参数名称为“parameterName”。如果您的操作有多个参数,则需要相应地更改代码。

ASP.NET MVC ActionFilterAttribute: 获取路由名称和参数

原文地址: https://www.cveoy.top/t/topic/oFgY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录