aspne实现mvc模式的研究.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
aspne实现mvc模式的研究 近年来,是微软企业引入的一种新体系结构。在web框架下,开发人员可以开发网络攻击应用,并更快地建设大型web程序和web服务。越来越多的应用开始基于asp。网络的b.s框架进行开发,但web应用的开发有限传统的c-s框架的表面应用开发限制更多。对于大型b应用程序来说,调试和维护非常不便。如何在网络框架下创建易维护、易调用的web应用程序一直是开发人员的问题。本文以软件公司的工作进行为例,介绍了现阶段的平台上的一种可行的mvc解决方案。 系统采用了ASP.NET下的MVC设计模式,实现了业务逻辑、控制逻辑及前端数据显示逻辑的分离,从而使系统具有良好的扩展性与可维护性. 1 设计模式与vmc的设计模式 1.1 面向技术的应用 过去的几十年中,人们在寻找问题的解决方案的过程当中,发现大量本质上相类似的问题会反复出现并不断改变面孔,它们“相类似的本质”就是模式的概念.人们在利用面向对象技术解决这些相似问题的过程中有针对性的就某些同类问题设计总结了一些良好的解决方案,即所谓的设计模式.面向对象技术的目的之一就是提高软件的重用性,而设计模式、设计方案的重用则从更深的层次上体现了重用的意义和本质. 1.2 程序的性质和功能 MVC设计模式是Model(模型)-View(视图)-Controller(控制器)的简称.它要求应用程序在结构上按照功能的不同划分为model,view及controller三个功能模块.作为一种软件设计模式,MVC模块划分清晰、责任明确.应用MVC模式开发的程序具有较好的伸缩性、可重用性和可维护性.MVC架构如图1所示. 模型是问题中相关数据的逻辑抽象,代表了系统的内在属性,是整个模型的核心.它包含了应用程序的数据以及对数据进行访问、修改的业务逻辑规则,表达了程序所使用的数据和应用程式序的运行状态. 视图是模型的外部表现,一个模型可以对应一个或者多个视图.用户看到视图界面并与之交互,它主要负责访问模型中的数据并决定如何展现这些数据.在模型发生改变时,视图将维护与模型的一致性.同时,视图也负责把用户请求传递给控制器. 控制器是模型与视图的联系纽带,它接收通过视图传入的外部消息,解释用户动作,并把它映射为模型执行的过程.它控制着模型和视图之间的交互,决定对用户动作的响应流程.它主要完成两个方面的任务:一方面将用户与视图的交互动作映射成应用程序的标准业务事件并调用相应的模型进行处理,另一方面它将根据用户动作及模型的改变选择适合的视图来展现给用户. 2 asp。网络下的mvc 2.1 系统模型测试 ASP.NET本身提供了一个实现MVC 模式的环境.在ASP.NET 中,以页面( 视图) 为中心:每一个视图(.aspx文件) 都有一个对应的控制器(页面隐藏代码.aspx.cs文件).页面控制器捕获视图中发生的事件和提交的数据,并调用模型来处理它们,控制器是介于视图和模型之间的一个中间层.用户浏览器、视图、模型、控制器、数据库五者之间的应用系统模型如图2所示. 在ASP.NET中使用基于code-behind技术的所谓Web Form开发方式,使得Web程序的开发接近于传统桌面程序,尽管这样可以有效的使美工人员和程序人员各自关注自己的领域,使前后台的开发同时进行,但这其中aspx文件和aspx.cs被混成了一个类,控制器只是对应页面的页面控制器(PageController),所以ASP.NET只是在形式上把视图和控制分开而已,视图和控制器之间有较强的耦合性.而这种强耦合性会使得控制器选择下一视图时受到了很大限制,通常只能通过在代码中硬编码Response.Redirect(……)这样的语句来将请求转给下一个视图,而不是控制器.本质上说,这种方式使Web应用仍是从一个页面流向另一个页面,当页面很多且页面间的这种联系复杂多变时,程序的复用性,扩展性和维护性能非常的不好. 2.2 系统的前端控制和具体页面控制 针对ASP.NET中控制器与视图的高耦合性,可以对其进行部分扩展,将控制器分为两层: 1) 前端控制器(Front Controller):在整个应用程序中只有一个前端控制器,它负责接受所有客户端的动作请求,对请求做一定的处理后再选择转交给某一具体的页面控制器.前端控制器决定了整个对用户的响应流程. 2) 具体页面控制器(Specific Controller):在整个系统中有多个具体的页面级控制器,它对应于页面,它负责根据用户的具体请求来调用模型功能进行具体的业务逻辑处理,然后决定数据通过视图以何种方式展现给用户.采用两层控制器,将与视图无关的程序流转控制分离出来形成前端控制器,而与视图的数据展示有较强关系的页面控制功能则由具体页面控制器来实现. 2.3 mapering.工具软件设计 M

文档评论(0)

187****7209 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档