HTTP模块VS在asp.net-MVC行为过滤器 [英] HTTP module vs action filter in asp.net-mvc

查看:151
本文介绍了HTTP模块VS在asp.net-MVC行为过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我开发asp.net中MVC3一个应用程序,我有以下问题:
当我应该写一个HTTP模块,当我应该写一个动作过滤器?


解决方案

  1. 过滤是在做的事情,而HTTP模块的更多的MVC方法更的做事情的方式ASP.NET。双方通过在加工pipline提供钩手发球类似的目的。


  2. 的HttpModule是比较通用的,当你想为每个请求处理一些事情。过滤器是添加动作特定的行为非常有用。


  3. 如果你想成为的Http每一次请求执行一些事情,你应该使用一个HTTP模块。直到除非你检查IsChildActionOn一个请求期间ActionFilter可能被执行多次。


I am developing an application in asp.net MVC3 and I have the following questions: When should I write an HTTP module and when should I write an action filter?

解决方案

  1. Filter are more MVC approach of doing thing whereas Http Module are more of ASP.NET way of doing thing. Both serve similar purpose by providing hook in the processing pipline.

  2. HttpModule is more generic and when you want some thing to be processed on every request. Filters are useful for adding action specific behaviour.

  3. If you want some thing to be executed only once per Http Request, you should use an HttpModule. ActionFilter may get executed several times during a request until and unless you check IsChildActionOn.

这篇关于HTTP模块VS在asp.net-MVC行为过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆