ASP.NET MVC设计模式在中职德育管理系统中的应用
摘要:为了实现基于web平台的中职德育管理系统,采用了基于.net平台的MVC设计开发模式,应用ADO.NET实体数据模型和LINQ技术实现对数据的访问和处理,通过分层应用技术的开发,开发出来的德育管理系统质量高,易于管理维护,同时也提高了团队的开发效率。
关键字:ASP.NET;MVC;德育管理系统;ADO.NET实体模型
随着互联网技术的发展,Web开发技术得到了迅猛发展,ASP.NET是微软提出的开发框架,用于通过CSS、HTML、JavaScript 以及服务器脚本来构建网页和网站,MVC是ASP.NET的设计开发模式之一,ASP.NET MVC是现阶段主流的设计开发模式,使用ASP.NET MVC进行项目开发,使得复杂项目更加容易维护,可以更方便的控制应用程序的行为,提高代码的重用率,同时提高开发的效率,有利于团队的合作开发。
随着职业教育的发展,越来越多的中职学校对德育进行精细化的管理,并且进行量化考核,因此,通过有效的平台和手段进行有效的检查反馈及考核是必須的,基于web的中职德育管理系统运用而生。我专业开发中职德育管理系统中应用了MVC开发设计模式,充分利用MVC分层开发的特点,组织学生开发团队分工合作,大大提高了开发的项目,开发出来的项目代码质量高,系统更易于维护和管理。
一、MVC的介绍
MVC(ModelViewController),即模型视图控制器模式 ,是一种广泛流行的软件设计模式。它把软件系统分为三个部分:Model(模型)、View(视图)、Controller(控制器),每一部分的职责单一,既相对独立,又相互联系。
(一)Model
模型,封装了与应用程序的业务逻辑相关的数据以及对数据的处理方法,所
有有关数据库的操作只限制在模型中。
(二)View
视图,用户交互的界面,用于接收用户输入的数据,同时用户显示相关数据。
(三)Controller
控制器,主要是进行业务逻辑处理,调用模型处理业务请求,并控制实体数据在视图上的显示。
(四)MVC各层之间的关系
在MVC模式中,web用户通过视图(View)向服务器提交的所有请求都由控制器(Controller)接管;控制器接收到请求之后,负责决定应该调用哪个模型(Model)来进行处理;然后模型根据用户请求进行相应的数据处理,并返回处理的数据结果;最后控制器调用相应的视图来格式化模型返回的数据,并通过视图呈现给用户。
二、中职德育管理系统的系统功能设计
中职德育管理系统是一个基于B/S结构的web应用程序,其应用开发的的目标主要是为了方便中职学校管理德育的团队(德育主任、德育秘书、年级组长、班主任、学生会及团总支的学生干部等)对班级的各项检查进行及时的反馈,有效的进行对班级等的德育管理。系统的主要功能有:学生干部能够对班级的各项检查(主要包括仪容仪表、升旗仪式、卫生、团会课、黑板报、团员日记、教学执行日志检查、广播操等)进行登记反馈等;德育主任等管理团队成员可以对班级进行管理、查阅班级相关检查结果,并对班级、班主任进行管理考核;班主任可以查阅班级每天的各项检查结果、班主任的考核信息等。系统功能模块图如下图1所示。
整个系统采用基于MVC4.0框架的ASP.NET进行开发,开发环境采用Visual Studio 2013,创建使用Razor视图引擎的Internet应用程序,后台数据库使用SQL Sever2008 R2。
三、MVC设计模式在德育管理系统的应用实现
(一)Model数据层的实现
Model对象表示实体类,在本系统的开发过程中,我们通过从系统相对应的数据库MEMS创建相应的ADO.NET实体数据模型来生成相应的实体,实现数据模型命名为MEMSModel.edmx,生成的相应的实体为DatabaseEntities,实体对应多个类,这些类是数据库表生成的实体类,这些类当中包含所有的数据库表中的字段;创建ADO.NET实体数据模型后,相应的数据库连接字符串也同时会保存到web.config配置文件的connectionStrings节点中。
(二)控制器的实现
控制器主要是根据系统功能实现相应的业务逻辑,即根据用户从视图中发送的请求调用相应的数据模型进行处理,并把处理的结果返回给相应的视图。
创建ADO.NET实体数据模型类DatabaseEntities后,即可在控制器中使用数据处理相应的业务逻辑,下面以实现班主任模块功能——查阅班级日常检查信息讲解控制器的实现。
本系统的开发中,主要应用LINQ(语言集成查询)to SQL进行相应的数据查询。在Information控制器中Index方法中实现班级日常检查信息分页查询功能的业务逻辑的代码如下所示:
public ActionResult Index(int? pageIndex)
{var sqlist = from item in ww.classmonthsurface
select item;//通过LINQ语句查询日常检查相关信息
ViewBag.count = sqlist.Count();//统计记录条数
PagedList
data.TotalItemCount = sqlist.Count();
data.CurrentPageIndex = (int)(pageIndex ?? 1);
return View(data);//把数据返回给视图
}
在应用过程中,要实现分页,还需要引用分页组件MvcPager。
(三)视图的实现
视图层文件一般和控制器层中的有关方法存在着对应关系,视图页可以通过控制器中的方法快速创建,如在Information控制器中方法名Index中单击右键,即可创建相应的视图Index.cshtml。本项目使用的是Razor 引擎创建视图,Razor 语法用@ 标记。
視图的数据可以通过弱类型(如ViewBag、ViewData)和强类型(如Model )等多种方式从控制器层获取数据。
查阅班级日常检查信息功能的数据显示代码如下所示:
@usingMEMS.Models;
班级 | 班主任 | 升国旗仪式 | 团会课 | 团员日志 | 仪容仪表 | |
---|---|---|---|---|---|---|
@item.classname | @item.teachername | @item.Hoiseflag | @item.groupcourse | @item.membersdiary | @item.groomscore |
@Html.Pager((PagedList< classmonthsurface>)Model, new PagerOptions()
{
PageIndexParameterName = “pageIndex”,
PrevPageText = “上一页”,
NextPageText = “下一页”,
})//实现分页显示
四、结语
本文基于WEB开发技术的发展以及中职德育管理的需求,采用了基于.net平台的MVC设计开发模式,应用ADO.NET实体数据模型和LINQ技术实现对数据的访问和处理,通过分层应用技术进行中职德育管理系统的开发,开发出来的系统质量高,易于管理维护,同时也提高了团队的开发效率。对软件系统的开发以及软件专业学生的培养均有着实际的应用意义。
参考文献:
[1]赵鲁涛.ASP.NET MVC实训教程[M].机械工业社,2015.
[2]陈辉.ASP.NET MVC软件架构模式在学生实训管理系统的应用[J].电子设计工程,2015.13:1113.
[3]李丽平.基于MVC与ASP.NET教务管理系统的研究与应用[J].内蒙古科技与经济,2016,11.
[4]基于ASP.NET MVC模式的软件开发的研究与探讨[J].中国电子科学研究院学报,2016,12.
作者简介:彭凤英,女,汉族,广西合浦人,教育硕士,讲师,主要从事计算机软件开发专业课教学。