黄东连
(湖北工业大学,湖北 武汉 430068)
基于ASP.NET MVC框架的Web开发研究
黄东连
(湖北工业大学,湖北 武汉 430068)
ASP.NET MVC框架是微软公司推出的新一代Web应用程序开发框架,为.NET开发平台在互联网领域注入了一支强有力的主力军,从而使得微软公司在众多MVC开发框架中占据一席之地。本文首先介绍了MVC设计模式,然后介绍了在Mircrosoft Visual Studio 2012下创建基于ASP.NETMVC的Web应用程序,并对项目的开发目录结构进行了介绍。
MVC;ASP.NET MVC框架;Visual Studio 2012
在微软推出MVC开发框架之前就已经有很多使用具有MVC模式的框架,如基于Sun公司J2EE平台的Spring框架、Struts框架等,MVC框架的好处是它把视图层与业务逻辑层分离,从而使得Web应用更加容易维护和修改,所以得到很多开发者的使用。在此背景下,美国微软公司于2009年推出了新一代的基于.NET开发平台的ASP.NET MVC框架(现已经更新至ASP.NET MVC 4.0版本),从而在众多的MVC开发框架中占据一席之地,更是极大地推动了MVC模式的应用发展[1]。
ASP.NET中基于MVC模式的开发框架,与传统的Web应用程序开发方式不同,它将用户输入、业务逻辑和用户界面三者之间分离,从而降低了项目开发的复杂性,并且还增强了可测试性。不同的开发人员可以同时开发不同的部分,提高了项目组并发开发的能力[2]。
在了解ASP.NETMVC之间,首先需要清楚什么是MVC。MVC并不是一种程序语言,严格说起来也不算是一门技术,而是开发时所使用的一种“框架”。MVC (Model一View一Controller的简称,即模型、视图、控制器),是很多Web应用程序开发者熟悉的一种开发框架,其主要的作用是实现系统的输入、业务逻辑与用户界面三者之间的分离,从而达到分工明确的目的。如图1所示:
图1 MVC框架图
Model(模型):是MVC框架的主要部分,用于封装与应用程序业务相关的数据以及对数据的处理方法。Model与View之间可以表现为一对多的关系,Model提供处理后的结果数据给View,且Model对数据如何显示或如何操作并不关心[3]。
View(视图):是用户可以浏览并与之交互的界面。View的工作职责是接收从Model传递过来的结果数据,并根据用户的需求进行呈现,在View中不包括任何与业务逻辑相关的代码,也就是说,View只提供一个输出数据和用户操作界面。
Controller(控制器):Controller的工作职责是接受用户的输入和请求,并调用适当的Model和View来完成用户的需求。也就是说,Controller一方面根据用户的需求把相关的业务派送到相应的Model上处理,另一方面将Model返回的结果呈现到相应的View上。
ASP.NETMVC是一个以习惯替换配置的开发框架,它将通过MVC设计模式常见的规则,切割成Model、View、Controller三个部分,而且明确定义开发人员必须按照特定的”习惯”来开发程序[4一5]。
在Mircrosoft Visual Studio 2012(以下简称VS2012)平台中新建一个基于ASP.NET MVC 4 Web的应用程序, VS2012在解决方案里会自动生成具有MVC模式的目录结构,其中目录“Models”对应MVC中的Model,目录“Views”对应MVC中的View,目录“Controllers”对应MVC中的Controller。如图2所示:
图2 MVC目录结构
所有Model相关的类放在Models目录下。
所有View相关页面放在Views目录下。Views目录下的第一层子目录名称必须是相对应的Controller名称,且View页面的文档名必须以Controller里的Action名称来命名,而扩展名可以是aspx、ascx或cshtml。部分代码如下:
3.1 关注点分离与可维护性。也就是说,当我们在进行项目开发时,可以只关注在当前的对象上,不会受到相同项目中其他对象的干扰,进而专注于完成工作。
3.2 开发工具与效率。基于ASP.NET MVC框架的Web应用程序最大的优点就是可以采用Visual Studio进行开发,尤其是Visual Studio2012新增了许多ASP.NET MVC的开发支持,很大程度上提升了开发效率。
3.3 易于测试的架构。项目可通过各种测试框架(如Visual Studio、Unit Test、NUnit等),轻易地实现测试导向开发流程到专案中。
3.4 易于分工的架构。由于关注点分离的特性,所以在项目的开发早期阶段就可以进行分工,不用等到核心功能完成以后,才能开始进行开发或集成。
基于微软的ASP.NETMVC框架为Web应用开发提供了一种新的解决办法,使得ASP.NET应用程序也可以类似Java的Web应用程序一样拥有清晰的开发结构。页面全新的Rasor语法结构方便了界面开发,模型类与数据库的直接映射提高了代码的可读性,降低了组件间的耦合,增强了应用的可维护性和可测试性,提高了开发效率。
[1]林乐逸.基于ASP.NET MVC和实体框架的软件项目管理平台[D].上海:上海交通大学,2012.
[2]汪斌.基于ASP.NET的MVC框架的应用研究[J].电脑知识与技术,2009(07):1629一1631.
[3]叶红卫.基于ASP.NET MVC框架的Web设计[J].河北北方学院学报(自然科学版),2009(06):61一65.
[4]卢俊玮,常琳,陈的棍.MVC模式与ASP.NET MVC框架的技术研究[J].电脑知识与技术,2010(19):5160一5162.
[5]方柯.基于ASP.NET MVC框架的Web应用开发研究[D].上海:华东师范大学,2011.
Research on Web DeveloPment Based on ASP.NET MVC Framework
Huang Donglian
(Hubei University of Technology,Wuhan Hubei 430068)
ASP.NET MVC framework is a new generation of Web application development framework released by Microsoft,which is a powerful force for the.NET development platform in the Internet field,thus making Microsoft take a beneficial place in various MVC development framework.This paper firstly introduces the MVC design model,and then introduces the creation of Web application program based onASP.NET MVC under MicrosoftVisual Studio 2012, and introduces the development directory structure of the project.
MVC;ASP.NETMVC framework;VisualStudio 2012
TP393
A
1003一5168(2015)07一0026一2
2015一6一28
黄东连(1988.10一),女,硕士研究生,技术员,研究方向:计算机技术领域。