ASP.NET WebAPI - 将对象从自定义操作过滤器传递到操作

ASP.NET WebAPI - Pass object from Custom Action Filter to Action

根据这里的这个问题,ASP.NET MVC Pass object from Custom Action Filter to Action

,(用于 MVC),是否有类似的对象,我们可以从

中添加项目或值
public override void OnActionExecuting(HttpActionContext actionContext)
{
}

,(用于 WebAPI),并在几秒钟后在控制器的操作方法本身中访问它?

这个有效:

设置数据:

public class MyAwesomeFilterAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(HttpActionContext actionContext)
    {
        //add stuff here.. to be accessed later
        actionContext.Request.Properties.Add("myKey69", myValue);

    }       
}   

检索数据:

[MyAwesomeFilter]
public IHttpActionResult MyController( [FromBody] string myParmStr ) {

    //retrieve the obj you inserted in filter...
    obj myValue = null;
    if (Request.Properties.TryGetValue("myKey69", out myValue)) {
        //logic here...
    }

}