![基于ASP.NETMVC6框架的Web应用开发研究_第1页](http://file4.renrendoc.com/view/e82f1b2214f2fc43fa1e15c9bfd5f0cb/e82f1b2214f2fc43fa1e15c9bfd5f0cb1.gif)
![基于ASP.NETMVC6框架的Web应用开发研究_第2页](http://file4.renrendoc.com/view/e82f1b2214f2fc43fa1e15c9bfd5f0cb/e82f1b2214f2fc43fa1e15c9bfd5f0cb2.gif)
![基于ASP.NETMVC6框架的Web应用开发研究_第3页](http://file4.renrendoc.com/view/e82f1b2214f2fc43fa1e15c9bfd5f0cb/e82f1b2214f2fc43fa1e15c9bfd5f0cb3.gif)
![基于ASP.NETMVC6框架的Web应用开发研究_第4页](http://file4.renrendoc.com/view/e82f1b2214f2fc43fa1e15c9bfd5f0cb/e82f1b2214f2fc43fa1e15c9bfd5f0cb4.gif)
![基于ASP.NETMVC6框架的Web应用开发研究_第5页](http://file4.renrendoc.com/view/e82f1b2214f2fc43fa1e15c9bfd5f0cb/e82f1b2214f2fc43fa1e15c9bfd5f0cb5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于ASP.NETMVC6框架的Web应用开发研究 周宝昌Summary:该文对基于ASP.NET MVC6开发框架进行WEB应用开发,进行使用介绍。对MVC框架设计模式进行了概述,通过实际测试发现存在的问题,在给予纠正之后获得了较好的使用效果。Key:框架模式;WEB;应用开发;MVC:TP393 :A :1009-3044(2017)02-0101-031 MVC设计模式概述ASP.NET是微软公司的服务器端应用编程技术,它以Web页面和服务器控件为中心,ASP.NET MVC是微软公司提供的,以MVC模式为基础的WEB应用程序开发框架。基于MVC模式开发框架下的ASP.NET,与传统W
2、EB应用程序开发模式有所区别。MVC模式开发框架下,将用户输入、业务逻辑、用户界面三者之间进行分离,使得项目开发复杂性降低,并且增强了项目的可测试性。不同人员可以对不同部分进行同时开发,对项目组并开发能力来说是一大提高。MVC并不是一种程序语言,从严格意义上讲也不能称作一门技术,它是WEB应用程序开发时所用到的一种框架。MVC是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建Web应用程序的模式,Model(模型)表示应用程序核心(比如数据库记录列表)、View(视图)显示数据(数据库记录)、Controller(控制器)处理输入(写入数据库记录)。M
3、VC框架模式是被广大Web应用程序开发人员所熟悉的一种开发模式。MVC框架模式如(图1)所示:、Model(模型):Model为MVC框架的主体部分,用于封装与应用程序业务相关的数据以及对数据的处理方法。Model(模型)与view(视图)之间的关系可以表示为:单一与多种的关系。Model将数据结果处理之后,提供给View处理。Model对数据结果如何显示或者如何操作,并不直接参与。View(视图):View(视图)是用户可以直接浏览,并与之交互的界面。View与Model两者之间相互联系,Model将处理数据提供给View,View将数据接收后进行处理,然后根据客户需求将数据结果进行呈现。V
4、iew只是一个提供数据输出和用户操作的界面,并且View并不提供任何与操作逻辑相关的代码。Controller(控制器):Controller的主要工作职责是将用户的输入和请求进行接收,并且联合Model和View进行联合处理,三者之间相互配合完成结果。在实际运行过程之中,Controller一方面将数据结果返回到Model上进行处理,另一方面,Controller将数据结果传送给View进行实际显示。2 ASP.NET MVC6版本新特性ASP.NET MVC6已出炉多时,但现在很多项目都还在使用MVC4,所以MVC6还尚未流行开来,但是从各大新闻报纸媒体上都能或多或少的知道它的跨平台特性,
5、這也就弥补的ASP.NET一直以来的缺憾,MVC6吸纳了当前web前端主流技术,可以说是专为迎合前端开发人员而推出的新的框架。重要的是,微软重写了该框架并且开源,性能得到提升,如按需加载特性使得不再加载各种庞大的诸如system.web.Ill之类的程序集,其依赖的DNX做到了跨平台运行。在新版MVC6中,有很多变化,有些是彻底的变化,比如在最底层支持依赖注入技术。MVC6会引入一些新功能,最引人注目的功能就是TAG Helpers和View Components。Tag Helpers是HTML Helpers的一种替换,而View Components则引入里类似Web Forms中的We
6、b Control的概念。在MVC6中,还有一些与传统版本不相同的写法,例如:统一开发模型:普通写法:HTML.Validation Summary(true, , new class = text-danger )HTML.Label For(m = m.Surname, new class = col-md-2 control-label )HTML.Textbook(m = m.Surname, new class = form-control )HTML.Professionalization(m = m.Surname, , new class = text-danger )MVC6
7、写法:相比之下,MVC6框架模式下的写法更加简洁。在MV5出现不久之后,MVC 6已经很快出现在微软的官方网页,令人感叹技术的快速演进,让程序员也追得非常辛苦。不管是前端也好或是后端,快速发展的技术已经是IT行业的常态了,所以做这一行的人要有所认识,将快速演进视为一种享受,应为再怎么变,基础知识还是那些,所以只要掌握基础,它再怎么变也不会脱离基础的技术原理。MVC6也是如此。MVC 6是ASP.NET Core平台的其中之一,MVC6将MVC和Web API两者整合,并且更新ASP.NET Routing的核心,让MVC和Web API能适于同一个Routing API,而MVC和Web AP
8、I同时共用Model以及Controller(Web API的Controlled并入MVC的Controller 基础类别),也就是之后所有适合在MVC中的写法,都能用于Web API,反之亦然。Razor仍然是MVC 6 的View的首选指令码架构,而JSON的生成则沒有太大变化。 3 ASP.NET MVC6应用程序目录结构ASP.NET MVC是一个以习惯替换配置的开发框架,它将通过MVC设计模式常见的规则,切割成Model、View、Controller三个部分,而且明确定义开发人员必须按照特定的“习惯”来开发程序。使用中间件:在ASP.NET 5中,DI是强烈推荐使用的。所以.NE
9、T团队推出了一个可以适配主流.NET的Doc框架的DI组(Microsoft.Framework.Dependency Injection)。在该组件中,有一个扩展方法Addams()来把MVC的Controller注入容器中。通过Bemuse()来确认MVC相关的注入已经完成。修改一下Starbucks.cs文件(图2)。1) 使用Configure Services(Collectivism services)方法:Configure Services(Collectivism services)方法在应用程序启动时,NET Framework会自动调用该方法。在该方法调用完成后,才去调用
10、Configure(Oversimplification app)方法。2) 路由:在MVC6里,默认的静态路由表没有了,可以通过Bemuse()方法来添加路由。首先在Starbucks.cs文件中添加引用:using Microsoft.Asp Net.Routing。然后通过下面的方法来添加默认路由。3) 控制器:在MVC6里,很大的一个改动是Controller不再需要继承那个名字是Controller的基类,但是实际中你可能习惯了继承它,所以这个习惯是可以保持的。MVC框架会自动的搜索 Controller的類,并认为它就是一个控制器。4 ASP.NET MVC框架开发WEB应用程序所
11、具有的优缺点MVC框架所具有的优点:1)具有可维护性:MVC框架具有关注点分离,具有相对较高的可维护性。在实际工作中对项目进行开发时,我们只会将注意力集中在项目本身,而不会应其他事物分散了注意力,使得我们能够更加专注的完成项目。2)具有较高的开发效率:基于ASP.NET MVC框架下开发WEB应用程序,本身就是一个较为高效率的开发工具。其最大优点就是可以采用 Visual Studio 进行开发,尤其是在后来新改进的版本中,例如VisualStudio2012新增了许多ASP.NETMVC的开发支持,对开发效率给予了很大程度的提升。3)易于进行测试:在对项目进行测试时,可以通过各种测试框架(如
12、Visual Studio、Unit Test、N Unit等),轻易地实现测试导向开发流程到专案中。4)架构易于分工:MVC框架具有关注点能够分离的特性,在对项目进行开发的过程中,早期开发阶段就能对其进行分工,不用等到核心工作完成后再开始进行开发或者集成。MVC框架所具有的缺点:1)没有那么多的现成控件使用,开发效率相对较低(特别是对于菜鸟来说)。2)对于大型数据的处理比较难,还是因为没有现成gird view控件。这个控件虽然生成的HTML结构异常复杂,但是对于处理大量而且复杂的数据来说是很不错的。不过一般网站是很少有这种大量且复杂的数据,很多菜鸟都是用这个大炮来打子,浪费且低效率。对于网
13、站开发来说这个控件应该不推荐使用。采用这种模式,适合项目的扩展和维护。如果是小项目的话就没必要采用了,过于浪费资源。5 基于ASP.NET MVC6的WEB应用开发ASP.NET MVC6框架是一种较为先进的应用开发方式,相对于以前的版本,性能具有较大提升。使得开发过程更加规范精炼,本文选取了某地的一个实际项目进行开发测试。5.1 系统概述本文选取了我省资格证书考试系统,该系统是基于ASP.NET MVC6开发框架进行完成。主要完成学员考试的报名、管理、考试、证书发放等一系列功能。此考试系统由上岗证考试子系统、识别师考试子系统、鉴别师考试子系统三个部分组成。该系统的结构模块分为以下几部分:第一
14、,上岗证考试子系统;第二,识别师考试子系统;第三,鉴别师考试子系统;第四,考生个人支持平台;第五,后台管理系统。5.2 系统实际测试由于本文篇幅有限,不能详尽描述,加之系统实际测试时间较短,很可能无法完全准确对实际使用效果进行测试,在较短的实际测试中发现系统运行较为稳定,但随着业务量的增加,代码控制难度增加,系统的扩展性、代码的复用性和前后台的代码配合都受到了一定的限制,具体表现为:1)由于时间有限,导致系统的可测试性较为差,无法保证系统功能的扩展和代码的复用,如果测试环境较为理想,测试效果会有较大提升。2)VIEW STATE 和大量控件,使得系统变得有些臃肿缓慢,且在实际运行中不能进行很好
15、的控制。3)前台展示效果如果想要做到更加人性化,就需要前台脚本的大量支持,但是通过服务器控件所生成的代码,难以被前台脚本很好的控制。基于实际测试中存在的上述问题,为了使得系统获得更好的扩展性,开发人员尝试使用ASP.NET MVC6进行重新开发,选取系统的上岗资格证考试子系统,它涵盖了完整系统开发中的所有环节。重点对模型、视图、控制器、过滤器、可测试性和应用等方面的内容进行了重点关注。随后对开发效果进行了实时对比和评定,随后的测试效果本文就不进行一一描述,相对于之前的开发,本次取得了较为满意的效果。6 结束语ASP.NET MVC开发框架为企业的WEB应用程序开发提供了一种新模式,使得ASP.NET应用程序也能像Java企业应用一样具有清晰的结构。降低了大型项目的管理复杂性,并且增强了项目的可测试性,不同开发人员可以在同一时间对不同项目进行开发,增强开发人员的项目并组开发能力,使得项目的实际开发效率获得了提高。Reference:1 方柯.基于 ASP.NET MVC 框架的 Web 应用开发研究D.上海:华东师范大学,201
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小型建设工程施工合同样本
- 室外装修劳务分包合同
- 2024采购合同信息登记表
- 简单的买卖合同样本
- 车队维修合同模板
- 超市经理聘用协议书
- 关于医疗资源服务与保障情况的调研报告
- 2024-2025学年河北省石家庄市栾城区初三下学期5月考试卷语文试题试卷含解析
- 分数连乘教学课件苏教版详解
- 初中数学北师大版对称与平移练习卷
- 2024秋季开学第一课巴黎奥运会主题班会
- 2024年巴黎奥运会开学第一课专题
- 2024年南通市通州区区属国企业下属子公司公开招聘工作人员(高频重点提升专题训练)共500题附带答案详解
- 2024广西专业技术人员继续教育公需科目参考答案(97分)
- GB/T 44141-2024中央厨房运营管理规范
- 2024年新疆中考历史试卷试题答案解析及备考指导课件(深度解读)
- 庆阳2024年甘肃庆阳市合水县招聘辅警30人 笔试历年典型考题寄考点剖析含答案附详解
- 四川省成都市新都区新都一中北星中学2024-2025学年上学期七年级分班(奖学金)模拟数学试题
- 高中生物开学第一课【知识精研+能力提升】高一上学期生物人教版必修1
- 20162017八年级地理上册教学计划及进度表
- 梅花针疗法PPT参考幻灯片
评论
0/150
提交评论