ASP.NET MVC 简介

1、 ASP.NET MVC 是什么?设计模式

ASP.NET MVC是微软官方提供的以MVC模式为基础的ASP.NET Web应用程序(Web Application)框架,它由Castle的MonoRail而来,日前最新版本是ASP.NET MVC 4.0。是将一个Web应用分解为:Model、View和Controller。ASP.NET MVC框架提供了一个能够代替ASP.NET WebForm的基于MVC设计模式的应用。浏览器

MVC的优势:服务器

(1)、经过把项目分红Model、View和Controller,使得复杂项目更加容易维护,减小项目之间的耦合;框架

(2)、没有使用ViewState和服务器表单控件,能够更方便的控制应用程序的行为;单元测试

(3)、应用程序经过Controller来控制程序请求,并提供了原生的UrlRouting功能来重写Url;测试

(4)、使Web程序对单元测试的支持更加出色;spa

(5)、在团队开发模式下表现更出众。设计

 

二、MVC 包含的关键技术:orm

ActionResult:Action 的返回类型对象

Filter:过滤器

ModelBinder:Model绑定器

Url Routing:Url路由规则

 

三、MVC Web 项目的执行阶段:

阶段

详细信息

接收对应用程序的第一个请求

在 Global.asax 文件中,Route 对象将添加到 RouteTable 对象中。

执行路由

UrlRoutingModule 模块使用 RouteTable 集合中第一个匹配的 Route 对象来建立 RouteData 对象,而后使用所建立的对象建立 RequestContext 对象

建立 MVC 请求处理程序

MvcRouteHandler 对象将建立 MvcHandler 类的实例,并将 RequestContext 实例传递给处理程序

建立控制器

MvcHandler 对象使用 RequestContext 实例标识用于建立控制器实例的   IControllerFactory 对象(一般是 DefaultControllerFactory 类的实例)

执行控制器

MvcHandler 实例调用控制器的 Execute 方法

调用操做

对于从 ControllerBase 类继承的控制器,与该控制器关联的 ControllerActionInvoker 对象将决定要调用的   controller 类的操做方法,而后调用该方法

执行结果

操做方法将接收用户输入,准备合适的响应数 据,而后经过返回结果类型来执行结果。可执行的内置结果类型包括:ViewResult(呈现视图而且是最经常使用的结果类型)、 RedirectToRouteResult、RedirectResult、ContentResult、JsonResult、FileResult 和 EmptyResult

 

简单的描述一下:

步骤1:建立RouteTable

当ASP.NET应用程序第一次启动的时候才会发生第一步。RouteTable把URL映射到Handler。

步骤2:UrlRoutingModule拦截请求

第二步在咱们发起请求的时候发生。UrlRoutingModule拦截了每个请求而且建立和执行合适的Handler。

步骤3:执行MvcHandler

MvcHandler建立了控制器,而且把控制器传入ControllerContext,而后执行控制器。

步骤4:执行控制器

控制器检测要执行的控制器方法,构建参数列表而且执行方法。

步骤5:调用RenderView方法

大多数状况下,控制器方法调用RenderView()来把内容呈现回浏览器。Controller.RenderView()方法把这个工做委托给某个ViewEngine来作。

相关文章
相关标签/搜索