当前位置: 首页 > news >正文

AspNet web api 和mvc 过滤器差异

最近在维护老项目。定义个拦截器记录接口日志。但是发现不生效 
最后发现因为继承的  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下注入


 

http://www.lryc.cn/news/293571.html

相关文章:

  • HarmonyOS应用/服务发布:打造多设备生态的关键一步
  • 【数据结构】双向带头循环链表实现及总结
  • 创建自己的Hexo博客
  • 音箱、功放播放HDMI音频解决方案之HDMI音频分离器HHA
  • 天猫数据分析:2023年坚果炒货市场年销额超71亿,混合坚果成多数消费者首选
  • YouTrack 用户登录提示 JIRA 错误
  • 题目 1163: 排队买票
  • 【lesson9】高并发内存池Page Cache层释放内存的实现
  • Java基础面试题-6day
  • 【Oracle 集群】RAC知识图文详细教程(三)--RAC工作原理和相关组件
  • 二级C语言笔试2
  • 如何计算两个指定日期相差几年几月几日
  • 再识C语言 DAY13 【递归函数(超详细)】
  • 【Linux】权限管理
  • 地理坐标系、空间坐标系、epsg查询网站
  • docker 容器指定主机网段
  • 零基础Vue框架上手;git,node,yarn安装
  • 十分钟学会用springboot制作微信小程序富文本编辑器
  • 【BBF系列协议】TR181-1 TR069的设备数据模型
  • Elasticsearch(简称ES)性能优化 实践
  • 《跨越阶层,小白选专业的逻辑:揭秘家庭背景与个人发展的秘密联系》
  • Python调用pyspark报错整理
  • 快递员的烦恼 - 华为OD统一考试
  • css1基础选择器
  • 【C语言】内联函数总结
  • 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之MenuItemGroup组件
  • 【Linux多线程编程】互斥锁及其使用
  • RabbitMQ_00000
  • 【linux】docker下homeassistant和nodered安装及配置
  • Qt扩展-muParser数学公式解析