简述ASP.NET MVC 工作原理

在园子里面看了很久,关于MVC工作原理的阐述,还是觉得Artech的最详细了 。

摘要: ASP.NET由于采用了管道式设计,具有很好的扩展性,而整个ASP.NET MVC应用框架就是通过扩展ASP.NET实现的。我们知道ASP.NET的扩展点主要体现在HttpMoudle和HttpHandler这两个核心组建之上,实际上整个ASP.NET MVC框架就是通过自定义的HttpMoudle(UrlRoutingModule)和HttpHandler(MvcHandler)实现的。

  • UrlRoutingModule实现接口IHttpMoudle,通过订阅管道事件:PostResolveRequestCache 实现请求地址解析。(也就是ASP.NET路由,具体如下图所示)
  • MvcHandler实现接口IHttpHandler, MvcHandler实现对Controller的激活、Action方法(通过反射获取方法)的执行以及对请求的相应,毫不夸张地说,整个MVC框架实现在MvcHandler之中。

概念简单的说就是如上两点,具体的更详细的可以参考链接:

http://www.cnblogs.com/artech/archive/2011/12/05/asp-mvc-how-to-work.html#!comments

http://www.cnblogs.com/blodfox777/archive/2010/01/04/iis-url-rewriting-and-aspnet-routing-1.html

URL Rewriting 和 ASP.NET routing

URL重写(URL Rewriting)

rewritediagram

ASP.NET路由(ASP.NET Routing)

Router

原文地址:https://www.cnblogs.com/Teresa-luo/p/3374565.html