美文网首页ASP.NET
.Net Core 3.x MVC ResultFilter 和

.Net Core 3.x MVC ResultFilter 和

作者: 单程车票_SJ | 来源:发表于2020-10-22 17:12 被阅读0次

1. 结果过滤器 IResultFilter

     结果过滤器:这个过滤器的作用和操作过滤器非常相似,主要其作用范围是有微小区别的,结果过滤器是在操作即将返回结果到客户端之前(before)或者之后(after)执行干预,比如你可以在返回结果之后(after)去渲染视图

2. 资源过滤器 IResourceFilter

     资源过滤器:但请求进入,通过授权过滤器后,接下来将执行资源过滤器(如果有定义),使用资源过滤器甚至可以改变绑定模型,还可以在资源过滤器中实现缓存以提高性能

例子:

在 CustomActionFilterAttribute.cs  继续添加 CustomResourceFilterAttribute 和 CustomControllerFilterAttribute

修改 FilterController.cs 的 Infomation 特性 

生成编译 -> 浏览 /filter/Infomation 

这里可以可注意到三点:

1.OnResourceExecuted 比 全局Action 还先输出

2.OnResultExecuted 和 OnResultExecuting 在 全局Action 结束后 才处理

3.OnResultExecuted 之后才执行 OnResourceExecuting

这里就很清晰的可以看到过滤器的循序,就可以很好的知道项目业务中需要在哪个地方处理


下一章《.Net Core 3.x MVC IResourceFilter 缓存》

相关文章

网友评论

    本文标题:.Net Core 3.x MVC ResultFilter 和

    本文链接:https://www.haomeiwen.com/subject/zwkumktx.html