概述
模型-视图-控制器(Model View Controller,MVC )架构将一个应用程序分拆成3个主要部分:
- 模型 :模型对象属于应用程序逻辑实现部分。通常,模型对象也用于在数据库中获取和储存模式状态。
- 视图 :用于展示应用程序用户界面(UI)。一般来说,UI从模型数据中创建出来。例如产品表数据的编辑视图,就会根据产品对象的当前状态显示各个文本框、下拉框、复选框等控件。
- 控制器 :用于处理用户交互、控制模型,最终选择某个视图来展现到UI上。对于MVC应用程序,视图仅仅用于显示信息,控制器处理和回应用户输入和交互。
MVC模型可以帮助我们将应用程序分离为好几个不同的部分,例如输入逻辑、业务逻辑、UI逻辑等,同时提供各个组件之间的松散耦合处理方式。显而易见,在建立应用程序的时候,分离的做法有利于完成复杂性管理,让我们可以在一个时间内只专注于其中一个组件的实现上。除了可以实现复杂性管理外,MVC应用程序相对于传统的ASP.NET网络应用程序,更容易实现测试,鼓励开发人员使用测试驱动开发(TDD)的模式进行程序开发。
同时,ASP.NET MVC框架提供了在创建ASP.NET Web Form的时候,可以提供创建基于MVC网络应用程序的选择。ASP.NET MVC框架是一个轻量、高测试性的表现框架,可与现有的ASP.NET特性整合在一起,例如Master页和基于成员的验证方法。
此外,三大部分之间的松散耦合处理方式,同时提高了并行开发的能力。例如,一个开发人员专注于视图开发,第二个开发人员负责控制器逻辑,而第三个开发人员集中精力管理好模型中的业务逻辑。
学习目标
- 理解ASP.NET MVC框架
- 创建一个ASP.NET MVC应用程序
- 在创建ASP.NET MVC应用程序的时候实施测试
准备工作
- 下载及安装VS2010 Ultimate RC
- 安装SQL2005/2008
- 安装AdventureWorks示例数据库
- 对于SQL2005, AdventureWorksLT.msi
- 对于SQL2008,AdventureWorks 2008 Sample databases