操作过滤器ActionParameters

时间:2010-01-04 23:28:07

标签: c# asp.net-mvc parameters action-filter actionfilterattribute

我有一个ActionFilterAttribute,我想接受参数,但我无法弄清楚它们是否通过。

所以我的动作过滤器看起来像这样;

public class PreventAction : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        filterContext.Result = new RedirectResult("Home/Index");
    }
}

我这样装饰我的动作;

[PreventAction]
public ActionResult Ideas()
{
  return View();
}

现在我想添加一个参数,以便我可以像这样调用过滤器;

[PreventAction(myParam1 = "1", myParam2 = "2")]
public ActionResult Ideas()
{
  return View();
}

任何人都知道怎么做?

1 个答案:

答案 0 :(得分:25)

只需添加MyParam1MyParam2作为PreventAction课程的属性即可。如果您需要参数(而不是可选),请将它们作为参数添加到PreventAction的构造函数中。

这是来自MSDN的简单属性类的quick tutorial