C# Webapi Filter 过滤器 - 生命周期钩子函数 - Action Filter 基础
ACTION Filter
IAsyncACtionFilter 接口 ;
1.注入ActionFilter
// 注册过滤器 builder.Services.Configure<MvcOptions>(opt => { opt.Filters.Add<MyExceptionFilter>(); // 注册ExceptionFilter opt.Filters.Add<MyActionFilter>(); // 注册ActionFilter });
2. 具体实现 ActionFilter 服务
using Microsoft.AspNetCore.Mvc.Filters; namespace Filter { /// <summary> /// 基本的方法的使用 /// </summary> public class MyActionFilter : IAsyncActionFilter { public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { // 多个ActionFilter执行的顺寻按照注入时的顺序来的 Console.WriteLine("开始执行方法的代码"); ActionExecutedContext result = await next(); if (result.Exception != null) { Console.WriteLine("发生异常"); } else { Console.WriteLine("执行成功"); } } } }