Изменение значений ActionExecutingContext в атрибуте пользовательского фильтра - PullRequest
0 голосов
/ 06 января 2010

У меня есть пользовательский атрибут фильтра, который я хочу использовать в определенных действиях ActionResults для просмотра данных и установки значений при нарушении определенных правил.

Итак,

public class SpecialActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        foreach (string value in filterContext.Controller.ValueProvider.Keys)
        {
            string h = filterContext.Controller.ValueProvider[value].AttemptedValue;

            if (h == "1")
            {
                //set the value of the key to be say "one".    
            }
        }

        base.OnActionExecuting(filterContext);
    }

}

это возможно?

1 Ответ

1 голос
/ 06 января 2010

Вы можете проверить или изменить параметры, которые будут переданы действию - для этого см. Свойство ActionExecutingContext.ActionParameters .Это очень общее решение, хотя.Если бы вы могли предоставить немного больше информации о том, что именно вы пытаетесь сделать, мы могли бы предоставить более подходящие предложения.

...