浅谈ASP.NET MVC运行过程

 

浅谈ASP.NET MVC运行过程_第1张图片描述

本篇文章主要概述ASP.NET MVC,具体包括如下内容:

1.MVC模式概述

2.WebForm概述

3.WebForm与MVC区别

4.ASP.NET MVC发展历程

5.运用程序结构

6.ASP.NET MVC 默认约定

 一 MVC模式概述

1. MVC模式运用领域

浅谈ASP.NET MVC运行过程_第2张图片

分析:

(1)当前,MVC作为一种主流框架,被广泛运用,如JAVA Web开发,.NET ASP,NET MVC

(2)MVC模式被广泛运用于中间件,如RabbitMQ;

(3)MVC模式广泛运用于接口开发,如ASP.NET WebAPI;

(4)其他领域;

2.MVC大致流程概述

 浅谈ASP.NET MVC运行过程_第3张图片

分析:

(1)MVC由三大核心模块构成:控制器(Controller,简称C),模型(Model,简称M)和视图(View,简称V);

(2)View负责视图呈现,Model负责数据处理,Controller负责处理视图与模型之间逻辑;

(3)WebForm中,一般是UI+BLL+DAL+Utility+WebService模式,而在MVC中,一般采用SOA+WebAPI+DAL+Model+MQ+AOP+Docker模式;

二 WebForm概述

1. WebForm生命周期

浅谈ASP.NET MVC运行过程_第4张图片

分析:

(1)WebForm Page生命周期,本质上为几个方法的运用;

(2)重点理解管道;

(3)分析页面生命周期时,应结合http本质来综合分析;

2.WebForm请求响应流程概述

浅谈ASP.NET MVC运行过程_第5张图片

分析:

(1).在WebForm中,资源可以分为静态资源和动态资源:

    静态资源:JS文件,Images文件,CSS文件和Html文件等;

    动态资源:.aspx,.ashx,.ascx等;

(2).在WebForm中,浏览器向IIS发出资源请求,当IIS收到请求URL时,先判断该请求是动态资源请求还是静态资源请求,然后分别按照不同的模式去服务器搜索资源。

浅谈ASP.NET MVC运行过程_第6张图片

 3. WebFrom页面构成

 浅谈ASP.NET MVC运行过程_第7张图片

分析:

(1)WebForm中,每个页面对应一个类,页面泪继承Page类,我们称为页面类,如上图中Default页面对应的类为_Default,

(2)每个页面由三部分组成:前端代码(Default.aspx),后台代码(Default.aspx.cs)和设计器(Default.aspx.designer.cs);

三  WebForm与MVC区别

1.WebForm不利于前后端分离,MVC前后端分离;

浅谈ASP.NET MVC运行过程_第8张图片

2.请求url不同,一般情况,WebForm请求的是服务器上的具体路径资源(当然你可以配置虚拟路劲),而MVC却并非如此(按照路由规则,一般情况是:/控制器/视图);

3.与MVC相互比较,响应时间(由于是服务端控件,服务器响应耗时)和带宽问题(WebForm会存在很多垃圾数据,如ViewState)

 浅谈ASP.NET MVC运行过程_第9张图片

 (4)WebForm中,一般是UI+BLL+DAL+Utility+Webservice模式,而在MVC中,一般采用SOA+WebAPI+DAL+Model+MQ+AOP+Docker模式;

四   ASP.NET MVC发展历程

浅谈ASP.NET MVC运行过程_第10张图片

 五  运用程序结构

浅谈ASP.NET MVC运行过程_第11张图片

分析:

(1)在ASP.NET Web 框架中,目录结构是可以被扩展和修改的。

基于MVC框架自动生成的目录结构:

浅谈ASP.NET MVC运行过程_第12张图片

 

但在实际项目实践中,一般都需要调整,调整后的目录结构如下所示:

浅谈ASP.NET MVC运行过程_第13张图片

 “空模板”,添加“单元测试”

 浅谈ASP.NET MVC运行过程_第14张图片

默认生成结构如下

 浅谈ASP.NET MVC运行过程_第15张图片

传统三层结构:

 浅谈ASP.NET MVC运行过程_第16张图片

基于SOA架构

浅谈ASP.NET MVC运行过程_第17张图片

当然,在UI层,一般情况是需要分区的

浅谈ASP.NET MVC运行过程_第18张图片

六  APS.NET MVC基架约定

 浅谈ASP.NET MVC运行过程_第19张图片

分析:

基于ASP.NET MVC 基架生成的MVC,有些默认的约定,如控制器必须以Cotroller结尾等,这些默认约定,不需要在Web.config配置文件中配置;

七   ASP.NET  B/S基架包含的模板

浅谈ASP.NET MVC运行过程_第20张图片

分析:

1..NET分为C/S和B/S,B/S基架包含的模板为WebForm,MVC,WebApi,Single Page Application,Azure API运用;

来源:http://www.cnblogs.com/wangjiming/p/8109555.html


你可能感兴趣的:(浅谈ASP.NET MVC运行过程)