Asp.net中一共有五种Fillter
- AuthorizationFilter 授权过滤器
- IResourceFilter 资源管理过滤器
- IActionFilter 行为过滤器
- IExceptionFilter 异常过滤器
- IResultFilter 结果过滤器
public class CtmActionFilterAttribute : Attribute,IActionFilter { public void OnActionExecuted(ActionExecutedContext context) { Console.WriteLine("OnActionExecuted"); } public void OnActionExecuting(ActionExecutingContext context) { Console.WriteLine("OnActionExecuting"); } }
注册方式
- 方法注册
- 类注册
- 全局注册
方法注册
[Route("api/[controller]")]
[ApiController]
public class DoHomeworkController : ControllerBase
{
[HttpGet]
public string DoHomeWork()
{
return GetInCar();
}
private string GetInCar()
{
return "上车";
}
[HttpGet("2")]
[CtmFillters.CtmActionFilter]
public string DoHomeWork1()
{
return GetInCar();
}
}
类注册
[Route("api/[controller]")]
[ApiController]
[CtmFillters.CtmActionFilter]
public class DoHomeworkController : ControllerBase
{
[HttpGet]
public string DoHomeWork()
{
return GetInCar();
}
private string GetInCar()
{
return "上车";
}
[HttpGet("2")]
public string DoHomeWork1()
{
return GetInCar();
}
}
全局注册先于类注册先于方法注册执行
同理其他Filter的注册方式
另外Filter中的依赖注入,可使用[TypeFilter(Typeof(CtmActionFilterAttribute))]
标签:Asp,return,string,Fillter,注册,过滤器,GetInCar,Net,public From: https://www.cnblogs.com/HRDK-CADeveloper/p/17422569.html