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.mzph.cn/news/664651.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

客户端和服务端的简介

Client 和 Server 客户端(Client) 或称用户端,是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在客户机上,需要与服务端互相配合运行。例如:下载 Q…

ChatGPT炸裂了

优质内容:ChatGPT太炸裂了 hello,我是小索奇 很多人在使用ChatGPT时遇到了两个主要问题,导致他们觉得这个工具并没有带来太多实际价值。首先,许多人发现ChatGPT的回答缺乏深度,缺乏实用性。其次,一些人在使…

MySQL操作问题汇总

MySQL操作问题汇总 无法远程连接Ubuntu的MySQL 无法远程连接Ubuntu的MySQL 提示:MySQL默认只允许本地连接:localhost 解决: #1.修改配置文件 #/etc/mysql/mysql.conf.d/mysqld.cnf > cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/…

WebSocketServer依赖注入问题

WebSocketServer加入spring的bean管理 问题 @Component @ServerEndpoint("/webSocket/{topic}") @Slf4j public class WebSocketServer {@Autowiredprivate WsHandle wsHandle;} 前面使用@ServerEndpoint注册一个websocket服务端,然后发现wsHandle依赖注入失败,…

STM32GPIO输入(按键控制LED、光敏电阻控制蜂鸣器实例)

文章目录 一、介绍传感器模块介绍硬件电路c语言数据类型 二、实例按键控制LED接线图代码实现 光敏电阻控制蜂鸣器组装线路代码实现 相关函数解释 一、介绍 传感器模块介绍 硬件电路 上两种按下时为0,下两种按下时为1。 c语言数据类型 现在常用stdint头文件所定…

BeanDefinitionRegistry学习

Spring版本5.1.x 简介 在Spring框架中,BeanDefinitionRegistry是一个接口,它主要用于向注册表中注册BeanDefinition实例,完成注册的过程。该接口的主要方法是registerBeanDefinition,用于将一个BeanDefinition实例注册到注册表中…

【zip密码】zip压缩包的打开密码忘了,怎么办?

Zip压缩包设置了密码,解压的时候就需要输入正确对密码才能顺利解压出文件,正常当我们解压文件或者删除密码的时候,虽然方法多,但是都需要输入正确的密码才能完成。忘记密码就无法进行操作。 那么,忘记了zip压缩包的密…

一张证书如何改变职业生涯?程序员必看!

随着信息产业的迅猛发展,对行业人才的需求也在逐年扩大。据统计,未来五年,我国对信息化人才的总需求量将高达1500万至2000万人。以软件开发为例,我国对软件人才的需求正以每年20%的速度递增,每年新增的需求接近百万。计…

1 初识JVM

JVM(Java Virtual Machine),也就是 “Java虚拟机”。 对于第三点功能:即时编译 常见的JVM 默认安装在JDK中的虚拟机为HotSpot:可以用“java -version”进行查看

云原生 API 网关链路追踪能力重磅上线

云原生API网关介绍 云原生 API 网关是腾讯云基于开源网关推出的一款高性能高可用的云原生 API 网关产品,作为云上流量入口,集成请求分发、API 管理、流量监控、访问限制等功能,是微服务架构和容器架构中的重要组件。 TSE 云原生 API 网关提…

数据分析基础之《pandas(4)—pandas画图》

1、DataFrame.plot(xNone, yNone, kindline) 说明: x:设置x轴标签 y:设置y轴标签 kind: line 折线图 bar 柱状图 hist 直方图 pie 饼图 scatter 散点图 # 找到p_change和turnover之间的关系 data.plot(xvolume, yturnover, kinds…

【数据库】分区的优点和缺点

​ 🍎个人博客:个人主页 🏆个人专栏:数据库 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 优点: 缺点: 结语 我的其他博客 ​ 前言 数据库中的分区技术为处理大规模数据提供了一种有效的手段…

五大浏览器内核及代表浏览器,一文讲透!

Hi,我是贝格前端工场,在进行web前端开发的时候,浏览器兼容性一直是让所有前端工程师头疼的问题,其根源在于不同的浏览器应用了不同的内核,其对html、css、js的解析规则也是不一样的,作为前端开发的你,如果不…

【核心网】【LTE】附着信令流程报文 - 关键字段内容

目录 1. (S1AP/NAS-EPS) --> InitialUEMessage, Attach request, PDN connectivity request 2. (DIAMETER) --> cmd=3GPP-Authentication-Information Request(318) flags=RP-- appl=3GPP S6a/S6d(16777251) h2h=

一文掌握单基因GSEA富集分析

本期教程 本期教程原文:一文掌握单基因GSEA富集分析 | gseaGO and gseaKEGG 写在前面 关于GSEA分析,我们在前期的教程单基因GSEA富集分析 | 20220404有出过类似的分享。今天,我们也结合相关的资源整理出一篇关于GSEA的教程及出图教程。每个方法的教程很多,我们大家结合自…

2024美赛数学建模A题思路分析 - 资源可用性和性别比例(2)

# 1 赛题 问题A:资源可用性和性别比例 虽然一些动物物种存在于通常的雄性或雌性性别之外,但大多数物种实质上是雄性或雌性。虽然许多物种在出生时的性别比例为1:1,但其他物种的性别比例并不均匀。这被称为适应性性别比例的变化。…

C++vector容器

3.3.2vector容器 vector的数据安排及操作方式,与array非常相似,两者唯一差别在于空间的运用的灵活性。Array是静态控件,一旦配置了就不能改变,要换大一点或者小一点的空间,可以,一切琐碎得由自己来&#x…

打造实用Python学生管理系统:设计与实现

引言 在信息化教育管理的背景下,一个高效、便捷的学生管理系统对于提升教学管理效率具有重大意义。Python作为一种功能强大且易读易写的编程语言,非常适合用于开发此类系统。本文将探讨如何使用Python设计并实现一个基础的学生管理系统。 一、系统需求…

MYSQL基础问题

一.DBMS 是什么 DBMS(Database Management System),数据库管理系统,是一种操纵和管理 数据库的大型软件,用于建立、使用和维护数据库。对数据库进行统一的管理和 控制,以保证数据库的安全性和完整性。 二…

Leetcode—33. 搜索旋转排序数组【中等】

2024每日刷题&#xff08;一百一&#xff09; Leetcode—33. 搜索旋转排序数组 实现代码 class Solution { public:int search(vector<int>& nums, int target) {int n nums.size();int l 0, r n - 1;while(l < r) {int m l (r - l) / 2;if(nums[m] targe…