[译]ASP.NET MVC动手系列1-1:ASP.NET MVC概述

MVC(Model View Controller) 架构模式通常分为三个主要部分:

  • 模型(Models):模型对象一般是在应用中实现逻辑域的部分。通常情况下,模型对象用于在数据库中取得和存储模型状态。
  • 视图(Views):视图是应用中显示用户界面(UI)的组件。典型状况下,用户界面是根据模型数据创建。比如一个产品表的编辑视图中可能包括基于当前产品对象状态的文本框、下拉列表以及单选、复选框等。
  • 控制器(Controllers):控制器是处理用户交互,操作对应模型、最后选择相应视图来渲染用户界面的组件。在一个MVC架构的应用中,视图只用于显示信息;控制器对用户的输入和交互行为进行处理和响应。

MVC模式可以帮助你将应用拆分的不同方面拆分以形成多层结构(输入逻辑、商业逻辑和用户界面逻辑等),并为这些不同的层提供宽松的耦合关系。这样你就能在开发过程中一次只将精力集中于实现其中的一个方面。除了在处理复杂事务的优势外,调试基于MVC模式的应用也比调试传统ASP.NET WEB应用程序更容易, 因此MVC模式鼓励使用测试驱动开发(TDD: Test-driven development)来创建应用程序。

ASP.NET MVC 框架为ASP.NET Web Forms开发人员提供了创建基于MVC的WEB应用的选择。ASP.NET MVC 框架是一个轻量级的、高可测试性的框架,它与基于Web Forms的应用程序一样,结合了现有的ASP.NET特性,例如母版页和基于用户(Membership-based)的认证等。

除此之外,MVC应用程序三个主要组件之间的宽耦合更方便进行多人并行开发。例如,一个开发人员开发试图,另一个开发人员开发逻辑控制器,与此同时还有一个开发人员在模型层进行商业逻辑开发。

目标

在这个动手实验室系列中,你将学习到:

  • 认识和了解 ASP.NET MVC 框架;
  • 创建一个 ASP.NET MVC 应用程序;
  • 在创建 ASP.NET MVC 应用程序的过程中执行测试。

 

系统需求

为了完成此实验,你必须具备以下的系统配置环境:

  • Microsoft Visual Studio 2008 SP1
  • Microsoft ASP.NET MVC 1.0
  • Microsoft SQL 2005 or Microsoft SQL 2008 (体验版或更高版本)
  • Adventure Works 示例数据库

    • Microsoft SQL 2005 下使用: AdventureWorksLT.msi
      备注: 该 msi 安装程序只是将示例数据库文件拷贝到你的文件系统中;你还需要手动在SQL SERVER服务器中附加该数据库。更多信息,请参考 如何:在SQL Server Management Studio 中附加数据库.
      Vista 用户请注意: 确认将数据库文件安装到 “C:Program Files”以外的目录, 因为该文件夹具有额外的权限设置,可能会由于文件的只读属性造成你无法在工程文件中进行保存。

    • Microsoft SQL 2008 下使用: AdventureWorks 2008 sample databases
      备注: 该 msi 安装程序只是将示例数据库拷贝到你的文件系统中;不过,你只需要用到 AdventureWorksLT 数据库。

       

安装

本实验所需的所有必备组件可以用依赖性检测工具来检验。要确定所有项目都已正确配置,请执行以下步骤:

备注:要执行以下安装步骤,你需要在以管理员身份运行的命令提示窗口(cmd.exe)中运行所有脚本。

  1. 如果以前从没有进行过依赖性检测,请运行依赖性检测工具。要进行检测,运行 CheckDepenencies.cmd 脚本,该脚本位于 %TrainingKitInstallation%LabsaspNetMvcSetup 目录。根据向导提示扫描并安装任何缺少的组件(安装后,如果需要可以重新扫描)。
    提示:为了方便起见,在这个实验中你将用到的绝大部分代码会安装在Visual Studio 的 代码片段(code snippets)中。CheckDependencies.cmd 结束时会自动加载 Visual Studio 安装管理器来安装代码片段。

练习

这个动手实验中包含以下练习:

  1. 创建 ASP.NET MVC 应用程序
  2. 开发和完善 ASP.NET MVC 应用程序
  3. 测试 ASP.NET MVC 应用程序

完成整个实验预计需要时间: 90分钟。

补充说明:

每个练习中都包含一个起始解决方案,起始解决方案中缺少的代码将在练习工程中完成。因此如果你直接运行起始解决方案,将不能正常执行。
在每个练习中你还可以找到一个 End 目录,其中包括了在整个练习结束时你应该得到的解决方案。在练习过程中如果你需要额外的帮助,可以参考该解决方案。

(文本翻译自 ASP.NET MVC Training Kit,下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=1E0BE0B2-910A-4676-9F3A-41E4D9C0FC08&displaylang=en