之前写了点Asp.Net MVC的概念,没有实际上系统的介绍Asp.Net MVC开发方式与WebFrom 开发方式的区别。昨晚上看了访问自己blog的入口的搜索关键词大部分是冲着MVC来的,就有了冲动将自己浅薄的知识写在这里,供初学者有个浅显的认识。欢迎高手拍砖指导,希望能把一篇入门的文章写的尽善尽美。
WebFrom的一个事件开发模型
浏览者发送一个url请求,如果不在使用url重写机制或静态化技术的话,url请求的是具体一个xx.aspx页面。iis将url请求交给.Net Freamwork处理,这时经过复杂的Asp.Net生命周期 到执行我们 xx.aspx.cs文件,我们在代码文件中编写一些调用业务逻辑层处理数据的代码,然后再将处理的结果返回一个新的视图ViewPage交给视图引擎将aspx模板替换成具体的html标签装配成html然后写回客户端。如下图所示这个流程:
在WebFrom中我们由于ViewState帮助可以实现事件开发模型,但是aspx和asxp.cs之间这种codebehind技术并没有实现完全的代码和视图的分离,我们后台代码还是去控制view视图具体的显示逻辑,还是存在一个强的耦合。
Asp.Net MVC开发模型
在Asp.Net MVC中“请求——处理——响应”的模型变得更加的简单和分离的很好。View和Controller之间不再有强的耦合,而且页面没有复杂的生命周期,交给我们开发者就是一个简单的请求处理响应模型,非常的清爽。
用户的请求→IIS→.Net Freamwork→Route【.Net Freamwork 4.0 版本提供的Url路由组件】→Controller【控制器:处理用户的请求,从model中获取数据,并将数据交给View】→View→视图引擎【将数据装配到视图中,并生成新的html】→客户端
如下图所示Asp.Net MVC的开发模型:
看一下一个普通的Asp.Net MVC项目的项目:
希望这篇简单的开发模型的介绍能对你学习Asp.Net MVC有所帮助。也欢迎高手有什么意见或我哪地方说的不正确进行拍砖让我及时改正。
初识Asp.Net MVC2.0
初识Asp.Net MVC2.0【续】
Asp.Net MVC3 简单入门第一季(二)详解Asp.Net MVC3项目
Asp.Net MVC3 简单入门第一季(三)详解Controller之Filter
Asp.Net MVC3 简单入门第一季(四)详解Request Processing Pipeline