暑假为其两个月的实习生活结束了,跟着做了一个ASP.NET MVC的OA项目,现在做一些总结:
![](http://hi.csdn.net/attachment/201109/7/0_13153777789G39.gif)
基本上讲,一个MVC项目启动时,包括下面5个步骤:
1. 启动:一个MVC的项目启动的时候,首先从Global.asax.cs里面的Application_Start()开始。在Application_Start()里面定义routes, IoC container, ModelBinder, 等等需要在启动时配置好的部分;
2. 路径(routes):MvcHandler处理所有的请求 e.g. http://example.com/home/index,在这个环节的最后一步IHttpHandler的ProcessRequest方法被调用;
3. 生成controller: 在调用ProcessRequest方式时,DefaultControllerFactory按照进来的请求生成controller对象,e.g. HomeController. 之后controller对象调用Execute()方法;
4. 找到并调用controller action:controller在调用Execute()方法时,依靠ControllerActionInvoker找到相应的action,并调用该action, e.g. 调用HomeController里面的index()方法;
5. 生成界面(render view): 最后controller返回ActionResult,由View Engine生成界面;