我希望自动触发自定义属性,而无需在web api方法上编写该属性。 我能做到这一点的方式是什么?
答案 0 :(得分:0)
我们假设您有一个动作过滤器属性
public class MyApiActionFilterAttribute : FilterAttribute {
//...
}
根据您的使用方式,您可以将其分配给班级或行动
public class MyApiController : ApiController {
[MyApiActionFilter]
public IHttpActionResult MyAction() {
return Ok();
}
}
这仅适用于此操作。
但是,如果您希望将其应用于Web API中的所有(全局)操作,则需要将其添加到配置中。
GlobalConfiguration.Configuration.Filters.Add(new MyApiActionFilterAttribute ());
这通常在启动Web配置Web API时完成。
请注意,在执行上述操作时,过滤器将应用于所有请求。