ASP.NET MVC Framework是微软官方提供的MVC模式编写ASP.NET Web应用程序的一个框架.已于2009年3月19日正式发布. MVC(Model-View-Controller)用于表示一种软件架构模式.它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller). 既然是一个优秀的框架,那么就值得去学习一把,网上搜索了许多资料,希望对于MVC的学习有帮助。
目前官方已经公布了ASP.NET MVC 2 RC,但是推荐大家还是先把1.0学好,因为一切都是相通的。
一、学习资料
1、http://www.asp.net/mvc/:这肯定是最权威的指导,它提供了MVC的下载、解释了什么是MVC、也教会了我们如何去使用MVC。如果英文还好的话建议通过官方文档学习。
2、http://kb.cnblogs.com/zt/mvc/:博客园提供的ASP.NET MVC技术专题。这里有许多国内的大牛写一些学习笔记,相信有很多是可以把大家引入门的。同时也衷心希望CSDN也把相关专题做出来。
3、http://www.baidu.com/s?wd=asp.net+mvc&oq=asp.&f=3&rsp=1:"百度:asp.net mvc"最直接的学习方式。
4、http://www.cnblogs.com/WizardWu/archive/2009/04/18/1438809.html:一个网友写的《快速弄懂ASP.NET MVC》
5、http://www.cnblogs.com/zhangziqiu/archive/2009/02/27/ASPNET-MVC-1.html:一个网友写的《从0开始学习ASP.NET MVC》
二、ASP.NET MVC 1.0浅析
2.1 MVC的组成
Models:访问数据库,装载数据、处理业务逻辑。在项目中体现为数据实体类加业务代理类。
Views:显示数据,用户界面。在项目中体现为aspx页面,偶尔可以加上code-behind。
Controller:按路由规则将请求的数据传送给指定页面,用于显示;也可以把用户输入的数据传递给逻辑处理类。它可以包含简单的验证逻辑。不应包含数据访问逻辑。
MVC架构的运作方式如图0所示。
图0 MVC架构运作方式
2.2 为何使用MVC
提出MVC的目的无非是提高开发效率、提高可测试性。官方的ASP.NET MVC 1.0指南中指出(以下简称指南),基于MVC的Web应用程序有如下优点:
1、对复杂的程序管理更方便
It makes it easier to manage complexity by dividing an application into the model, the view, and the ontroller.
2、在开发上有更高的可控性
It does not use view state or server-based forms. This makes the MVC framework ideal for developers who want full control over the behavior of an application.
3、Routing使软件设计有更多灵活性
It uses a Front Controller pattern that processes Web application requests through a single controller. This enables you to design an application that supports a rich routing infrastructure.
4、更加适合测试驱动开发
It provides better support for test-driven development (TDD).
5、团队开发项目中有更高的可控性
It works well for Web applications that are supported by large teams of developers and Web designers who need a high degree of control over the application behavior.
同时MVC框架还有以下特点:
1、将应用程序分成各个组成部份,更有利于测