美文网首页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