答えて

2

ActionExecutingContext.ActionParametersプロパティを使用して、OnActionExecutingでパラメータ値を取得できます。

それだけでは擬似コードですが、たとえば、あなたはID

public class MessageActionFilter: ActionFilterAttribute 
{  
    public override void OnActionExecuting(ActionExecutingContext filterContext)  
    {   
     var response = filterContext.HttpContext.Response;     

     var parameterValue = filterContext.ActionParameters.SingleOrDefault(p => p.Key == "id"); 

     // check if not null before writing a message 

     response.Write(this.Message + parameterValue); // prints "User is updating item: <idvalue>" 
    } 

    public string Message {get; set;} 
} 

それは場合に役立ちます教えてくださいという名前のパラメータをretriveことができます。

+0

ありがとうございます!私はSingleOrDefaultを使用することができませんでしたが、値を取得するためにActionParameters ["id"]を使用しました。 – Jason

+0

SingleOrDefaultを使用するには、system.linqを含める必要があります –

関連する問題