怎么建立自己的网站,上海网站注销吗,网址短链接在线生成,10大工程必备软件最近在维护老项目。定义个拦截器记录接口日志。但是发现不生效 最后发现因为继承的 ApiController不是Controller 只能用 System.Web.Http下的拦截器生效。所以现在总结归纳一下 Web Api: System.Web.Http.Filters.ActionFilterAttribute 继承该类 Mvc: System.Web.Mvc.Ac…最近在维护老项目。定义个拦截器记录接口日志。但是发现不生效 最后发现因为继承的 ApiController不是Controller 只能用 System.Web.Http下的拦截器生效。所以现在总结归纳一下 Web Api: System.Web.Http.Filters.ActionFilterAttribute 继承该类 Mvc: System.Web.Mvc.ActionFilterAttribute 继承该类
Mvc: 提供4个重写方法 OnActionExecuting 执行前 OnActionExecuted 执行后 OnResultExecuting 返回前 OnResultExecuted 返回后 Web Api: 提供4个重写方法 OnActionExecuting 执行前 OnActionExecutingAsync 执行前(异步) OnActionExecuted 执行后 OnActionExecutedAsync 执行后(异步) 根据自己需求重写方法。然后注入 注入有2种方法 1. Web Api 和 Mvc 通用的。直接打特性。作用域为打了特性的 Class / Action 我是新建了一个类继承基类避免全局了。
2.全局注入Filter Mvc: 在FilterConfig下注入
Web Api: 在WebApiConfig下注入