2010-01-06 3 views
0

특정 ActionResults에서 사용하려는 사용자 지정 필터 특성을 사용하여 시도중인 데이터를보고 특정 규칙을 위반 한 값을 설정합니다.사용자 지정 필터 특성에서 ActionExecutingContext 값 변경

그래서;

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

조치에 전달할 매개 변수를 검사하거나 수정할 수 있습니다 (이 경우에는 ActionExecutingContext.ActionParameters 참조). 그러나 이것은 매우 일반적인 해결책입니다. 정확히하려는 일에 대해 좀 더 많은 정보를 제공 할 수 있다면 더 관련있는 제안을 제공 할 수 있습니다.

관련 문제