MVC设计模式在ASP.NET中的实现

来源 :发明与创新(综合版) | 被引量 : 0次 | 上传用户:michaelwf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  一、MVC设计模型组成
  
  “MVC”(Model-View-Controller)由Trygve Reenskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和界面系统的构成基础。MVC作为一种开发模型,通常用于分布式应用系统的设计和分析中,以及用于确定系统各部分间的组织关系。对于界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制器三种部件。
  模型(Model)部件保存由视图显示,由控制器控制的数据;它封装了问题的核心数据、逻辑和功能的计算关系,它独立于具体的界面表达和I/0操作。视图(View)部件把表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。
  控制器部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。
  
  二、MVC设计模式在ASP.NET中的实现
  
  ASP.NET提供了一个很好的实现这种经典设计模式的类似环境。开发者通过在ASPX页面中开发用户接口来实现视图;控制器的功能在逻辑功能代码(.cs)中实现;模型通常对应应用系统的业务部分。
  视图是模型的表示,它提供用户交互界面。在ASP.NET下,视图的实现很简单。可以像开发WINDOWS界面一样直接在集成开发环境下通过拖动控件来完成页面开发本。视图部分处理流程:首先,页面模板定义了页面的布局:页面配置文件定义视图标签的具体内容;然后,由页面布局策略类初始化并加载页面;每个用户部件根据它自己的配置进行初始化,加载校验器并设置参数,以及事件的委托等;用户提交后,通过了表示层的校验,用户部件把数据自动提交给业务实体即模型。
  为了能够控制和协调每个用户跨越多个请求的处理,控制机制应该以集中的方式进行管理。因此,为了达到集中管理的目的引入了控制器。应用程序的控制器集中从客户端接收请求(典型情况下是一个运行浏览器的用户),决定执行什么商业逻辑功能,然后将产生下一步用户界面的责任委派给一个适当的视图组件。
  控制器提供一个控制和处理请求的集中入口点,它负责接收、截取并处理用户请求;并将请求委托给分发者类,根据当前状态和业务操作的结果决定向客户呈现的视图。在这一部分主要定义了HttpReqDispatcher(分发者类)、HttpCapture(请求捕获者类)、Controller(控制器类)等,它们相互配合来完成控制器的功能。请求捕获者类捕获HTTP请求并转发给控制器类。控制器类是系统中处理所有请求的最初入口点。控制器完成一些必要的处理后把请求委托给分发者类;分发者类分发者负责视图的管理和导航,它管理将选择哪个视图提供给用户,并提供给分发资源控制。在这一部分分别采用了分发者、策略、工厂方法、适配器等设计模式。
  MVC系统中的模型从概念上可以分为两类——系统的内部状态和改变系统状态的动作。模型是你所有的商业逻辑代码片段所在。
  
  三、MVC模式的优缺点
  
  1、MVC模式的优点
  通过在ASP.NET中的MVC模式编写的,具有极其良好的可扩展性。它可以轻松实现以下功能:①实现一个模型的多个视图;②采用多个控制器;③当模型改变时,所有视图将自动刷新;④所有的控制器将相互独立工作。
  2、MVC模式的不足
  ①增加了系统结构和实现的复杂性。对于简单的界面,严格遵循Mvc,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
  ②视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。
  ③视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。
  
  四、结束语
  
  与软件所处理问题的内在模型相比较,用户界面是需要经常发生变化的,采用MVC设计模式可以在满足对界面要求的同时,使软件的计算模型独立于界面的构成。也可以基于此模型建立大型分布式应用程序框架。
  
  作者单位:湖南科技职业学院
其他文献
我国现代文学名家林语堂先生与中文打字机有着不解之缘。早在1916年,他就对中文打字机及中文检字问题发生了兴趣,后来,他在上海买了《机械手册》进行自学。他把各种型号的外文打字机买来,拆拆弄弄,到处摆放拆散的打字机零件,他的“有不为斋”快变成了打字机修理厂。  发明中文打字机,为什么要去摆弄外文打字机?这是因为现有的中文打字机需要大盘大盘的铅字,十分麻烦,林语堂想设计一架类似外文打字机的新机器。从19
由南开大学生命科学学院分子生物学研究所肿瘤研究室张晓东教授日前进行的一项研究表明,在乙型肝炎病毒(HBV)基因组中,x基因所表达的x蛋白的自然突变,与乙肝病毒的致癌作用密切相关。  统计显示,我国约有10%的人口携带乙肝病毒,每年死于肝癌的患者约15万人,而乙肝病毒感染与肝细胞癌(HCC)的发生具有十分密切的关系,90%的肝癌与乙肝有关。研究表明,乙肝病毒的X基因及其表达的x蛋白对肝细胞癌的产生具
按照目前人口的增长速度,到2025年,全球人口将从现在的66亿增加到80亿。如何改进传统农业、增加食品生产成为一个摆在人类面前的难题。当传统的土地已经难以挖掘更多潜力时,人们不由得将目光转向了空中。有专家提出,可以将庄稼种到空中去——建造摩天大楼,令其变为垂直农场。  建造摩天大楼般的垂直农场,这听起来有些不可思议。但是这种垂直农场将有效解决地球上潜在的食物匮乏问题。  目前,美国和欧洲的建筑设计
目前,中国传统畜牧业和现代农业均在一定程度上出现了问题,制约了农牧民增收。突出表现为,草原上过度放牧压制了草的生长,诱发了沙尘暴等生态灾难;牧区头数畜牧业难以与农区竞争。在农区,焚烧秸秆造成元素循环中断,耕地过分依赖化肥、农药和农膜;禽类在拥挤的空间内生长,所生产的禽类产品带来食品安全隐患:畜禽粪便污染了江河水系。  在土地使用功能上,如果牧民的牛羊和农区的鸡鹅交换“场地”,则可在很大程度上避免彼
在20世纪的中国思想文化史和社会史中,梁漱溟是一个充满“矛盾”的存在。他自谓“不懂什么叫哲学”,却站在了北大哲学讲堂;他成长于北京官宦人家书香门第,却致力于实践自己的乡村建设构想;他无心于从政,却大半生徘徊在政治边缘;他有强烈的出世情怀,却又以最入世的姿态奔走于世俗之间;他以佛法为信仰,却在“中国最后一位大儒”的光环中落下人生大幕。  斯人已远,空留绝想。让我们跟随梁漱溟之孙梁钦宁的讲述,尽可能地
1:10000地形图作为国家基本比例尺地形图在工程规划、勘测设计中发挥着十分重要的作用,但由于工作量巨大,大部分地区1:10000地形图更新周期较长,能够收集到的往往是上世纪80、90年代测绘的,有些甚至更早。这就使得地图不能很好地满足大型工程规划勘测设计的需要。  航空摄影测量是测绘更新1:10000地形图的理想手段,但航空摄影手续繁杂、生产周期相对较长、测绘范围不是很大时单位面积航空摄影费用较
近日,金隅集团旗下的北京新北水水泥有限责任公司宣布启动北京市处置污水厂污泥工程项目,这是北京金隅集团第一次系统化、规模化地发起破解污泥处置难题的一场攻坚战。这标志着新北水在北京市全面处置污泥难题方面迈出了实质性的第一步。    独创水泥回转窑处置污泥技术    污泥处置的总体目标是“四化”,即减量化、稳定化、无害化和资源化。如何达到这些目标?金隅新北水以环保型水泥企业的长期探索为基础,独创了利用水
高跟鞋向来是一把令时尚女性既爱又恨的双刃剑。一方面,它能使女性身姿挺拔、体态优美、魅力倍增;另一方面,穿高跟鞋引起的脚部肿痛、走路不稳,以及时刻存在的安全隐患,又让人对它无可奈何。不过,随着可调式高跟鞋的问世,这些恼人的问题将迎刃而解。  美国费城女子劳伦·汉德尔与其兄弟戴维·汉德尔共同开发出一种可调节鞋跟高度的高跟鞋。  高低可调戴维运用玩具的拆折原理,在鞋跟中设置一根可以拔出的小钢棒,将它折至
我的父亲叫李沛霖,祖籍河南荥阳李克寨村。因为自幼家贫,父亲7岁时就给城中一家康姓大户的少爷当书童。平日里,东家少爷在私塾读书,父亲就在窗外偷听。不过,那少爷在学堂读书不用功,描红(传统的习字法)都是父亲替他的。三年下来,少爷没识多少字,父亲却识了不少。11岁那年,时常吃不饱饭的父亲因不愿替少爷挨私塾先生的打,愤然逃离了家乡,结果在途中迷失方向,沿路向东乞讨走到了开封。在开封恰巧遇上一个在粮库拉车的
中国电池企业联合应诉完胜美国劲量公司“337电池专利纠纷案”,成为中国企业海外维权的又一典范。胜利的结果固然重要,但过程分析和经验总结对于不断“走出去”的中国企业或许更有裨益。    团结就是力量    从2002年开始,我国已连续6年成为遭受美国“337调查”最多的涉案国,受“337调查”影响的产品涉及机电、轻工、化工、生物、医疗器械等各个行业。但目前,我国企业应诉“337调查”情况不尽理想。