0

我有几个动作方法可以在页面上的每个动作上启动。与此类关联的属性之一定义了自定义属性,这又调用了在同一控制器类中定义的方法(action=method)。

但是不应该在所有动作上调用这个动作方法,在重定向到这个特定动作之前如何检查?

4

1 回答 1

0

您可以从过滤器上下文或控制器上下文对象中读取当前操作的值,RouteData如下所示:

public class MyAttribute : ActionFilterAttribute
{
    public override void OnResultExecuting(ResultExecutingContext filterContext)
    {
        var action = filterContext.RouteData.Values["action"];
        if(action == "xxx")
             ...// then 
        base.OnResultExecuting(filterContext);
    }
}
于 2013-01-19T22:01:06.693 回答