Вопрос

у меня есть 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();
}

Кто-нибудь знает, как это сделать?

Это было полезно?

Решение

Просто добавь MyParam1 и MyParam2 как свойства вашего PreventAction сорт.Если вам требуется, чтобы параметры присутствовали (а не были необязательными), добавьте их в качестве аргументов в конструктор для PreventAction вместо.

Вот краткое руководство простого класса атрибутов из MSDN.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top