MVC4中有任何类型的生命周期吗?
解决方法
> System.Web.Routing.UrlRoutingModule接收传入请求,该请求使用请求URL将请求映射到控制器操作方法.
>实例化适当的控制器
>可能会发生模型绑定和输入验证
>调用控制器和/或操作上的OnActionExecuting-操作方法过滤器
>调用操作方法本身
>调用任何OnActionExecuted和OnResultExecuting-actions of actions过滤器
>执行Action方法返回的ActionResult(通常是呈现HTML的ViewResult).
>调用任何OnResultExecuted – 操作方法过滤器.
上面的列表只是一个粗略的草图:
路由:
传入请求到MVC控制器的动作方法的映射本身就是一个故事.有关详细信息,请参阅ASP.NET Routing on MSDN.
动作过滤器:
有用于授权,输出缓存,错误处理等的动作过滤器,所有这些都在特定时间运行.这一次见Filtering in ASP.NET MVC on MSDN了解更多信息.
ASP.NET:
当然,仍然存在traditional ASP.NET application events.因此,像旧的System.Web.Security.FormsAuthenticationModule和System.Web.Caching.OutputCacheModule这样的HTTP模块仍然可以参与处理请求.
如果你想真正深入研究细节,请从CodePlex开始下载ASP.NET Web堆栈的源代码.很多你将在System.Web.Mvc.ControllerActionInvoker类中,尽管名字很可怕,不是很难遵循.
请参阅Dejan的答案,找到一个很好的图表的链接,总结了很多.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。