admin 管理员组

文章数量: 1086019


2024年3月28日发(作者:openstack安装部署手册)

120・ 价值工程 

基于ASP.NET的MVC设计模式探析 

MVC Design Pattern Analysis Based on ASP.NET 

胡炜Hu Wei 

(怀化职业技术学院,怀化418000) 

(Huaihua Vocational and Technical College,Huaihua 418000,China) 

摘要:MVC是一种设计思想。这种思想强调实现模型、视图和控制器的分离。本文分析了ASP.NETMVC的运行机制、路由以及MVC所带来 

的Web开发变化。 

Abstract:MVC is one kind of design thought.This thought emphasiges to realize separation of model,view and controller.This article analyzes 

ASP.NET MVC operating mechanism,routing,and Web development change brought by MVC. 

关键词:ASP.NET;MVC;设计模式;探析 

Key words:ASP.NET;MVC;design pattern;analysis 

中图分类号:TP39 文献标识码:A 文章编号:1006—4311(2010)19—0120—02 

O引言 3 ASP.NET MVC的路由 

MVC是一种网站系统的设计模式,当前被广泛应用于大型企 ASP.NET MVC中路由很重要,它直接决定了如何解析url,因 

业级Web应用的开发中。MVC设计模式将Web应用分解为三个部 此决定了系统如何工作。ASP.NET MVC路由配置在Globa1.aspx文 

分:模型(Mode1)、视图(View)和控制器(Controller),这三个部分分 件内,其中有段代码如下: 

别完成不同的功能以实现web应用。 

routes.MapRoute( 

1 MVC的概念 

”Default” //路由名 

MVC是Model—View—Controller的缩写,即把一个Web应用的 

”fcontmlkr}/(acti0n d //URL和参数 

输入、处理、输出流程按照Model,View,Controller的方式进行分离, 

new{controller=“Home”,action=”Index”,id=””}// 

个应用被分成三个层:模型层、视图层和控制层。 

默认参数 

模型层主要负责业务流程/状态的处理以及业务规则的制定。 

); 

routes.MapRoute方法是向系统增加一条路由规则。这条规则是 

业务流程的处理过程对其他层来说是黑匣子操作,模型层只负责接 

系统默认增加的,第一个参数是规则名,第二个参数描述了如何解 

收视图层的请求数据,并返回最终的处理结果。 

l。它描述了u rI中HostName后面部分如何匹配,其中带f}的表 

视图层主要是指用户交互的界面。一个应用可能有很多不同的 

析ur

示参数匹配,如果不带则表示字符串匹配。 

视图。 

{c0ntr0ller}/{action}/{id}:如果HostName后面有三段由“/”分割 

l被匹配,并且分别被解析成控制器名,Action 

完成用户的请求。控制层的作用就好像一个分发器,选择什么样的 

的字符串,则这个ur

名和一个口L』“idⅢ的参数。如果你输入的是http://loealhost/Home/ 

模型,选择什么样的视图,就可以完成什么样的用户请求。 

Index/1,则后面的“1”将被当做参数id的值:但是如果你请求http:// 

2 ASP.NET MVC的运行机制 

ocalhost/Home/Index/1/2,则请求无法成功,因为这条路由规则没法 

首先,Web浏览器向服务器发送一条URL请求,如http:// 

J,因为你的HostName后面有四段,而这个路由规则只 

HostName/ControllerName/ActionName/Parameters。其次I请求被ASP. 

匹配你的ur

控制层主要为用户接收请求,将模型与视图匹配在一起,共同 

 

NET MVC的路由映射系统获取,并按照映射规则,解析出 

能匹配三段。

ControllerName,ActionName和Parameters:再次,到Controllers目录 

当然,http://localhost/Home/Index的HostName后面只有两段, 

这就是MapRoute方法的第三个参数起作用了。这个 

下找到ControllerNameController.CS类,并在这个类中找到与 

也可以被匹配,

d的默 

ActionName同名的方法,将Parameters作为参数传给这个方法;最 

参数的作用是为上面规则中各个¨匹配段设置默认值,如上,i

//loealhost/Home/Index中,虽然没有 

后,Action方法开始执行,完成后将返回相应视图。默认情况下,会 

认值为””,即为空。所以在hnp:

d,但是它依然可以匹配成功,默认值是空值。如果把其中 

返回Views目录下与ControllerName同名的目录下的与ActionName 

显示指定i

id=… 去掉,将会发现http://localhosffHome/lndex已经无法匹配了。依 

同名的aspx文件,并且将ViewData传递到视图。如图1所示。 

次类推,http://localhost/Home/也可以匹配成功,因为faction}默认是 

呈班Views文件夹下的{ 

ndex,http://localhost/也可以匹配成功,因为默认{controllerl为 

ctionName aspx  

Home,所以,在默认值下http://loealhost/Home/Index和http:g 

一、 

\ie

 ̄,Da ta ’ 

loealhost/是等效的。 

r—] 

L~—J 

fl 一U…RLiJV ̄一 _一 

、、 

图1 ASP.NETMVC运行机制 

作者简介:胡炜(1977一),男,湖南芷江人,讲师,研究方向为Web服务和网 

络数据库。 

综上分析,我们得出一条重要结论:在默认值被设置的情况下, 

映射规则“配少不配多”,少的部分由默认值代替。 

4 ASP.NET MVC带来的变化 

4.1服务器端表单控件的变化由于ASP.NET MVC的特质,服 

务器端的表单控件不再被提倡使用,例如我们的文本框,不再使用 

asp:TextBox,而是使用传统的input,或直接让Htm1.TextBox生成。 

甚至GridView,也不再被提倡使用。但是,并不是说不能用任何服 

务器端控件,例如,为了实现母版,ContentPlaceHolder还是必须要 

使用的。 

4.2事件驱动模型的变化既然服务器端表单控件已经不提倡 

使用了,事件驱动模型自然也不被提倡,两者本来就是相辅相成的。 

Value Engineering ・121・ 

基于DODAF的无人机FMCS体系结构设计 

DODAF-Based Architecture Design of FMCS for UAV 

庄丽葵 Zhuang Likui;=[=W ̄①Wang Biao; ̄①Xie Juan;曹云峰 瞧Cao Yunfeng 

(①南京航空航天大学自动化学院,南京210016 ②南京航空航天大学高新技术研究院,南京21016) 

(@School ofAutomation Engineering,Nanjing University ofAeronautics and Astronautics,Nanjing 210016,China: 

( ̄)Aeademy of Frontier Science,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China) 

摘要:体系结构对降低系统研制风险,缩短研制周期、保证系统满足应用需求有着重大意义。针对无人机飞行管理计算机系统的复杂化和智 

能化的要求,探讨基于DODAF(美国国防体系结构框架)的体系结构建模方法。重点分析了体系结构产品的内容和相互逻辑关系,给出了具体的 

设计步骤,并对体系结构模型进行了验证,验证结果表明FMCS体系结构的正确性和合理性,为复杂系统的实现提供了支撑。 

Abstract:Architecture is important to reduce developing risk,to shorten development cycle,and to ensure the whole system meet the military 

requirement.In order to meet the requirement of UAV S FMCS,this paper first discusses the DODAF system modeling method.The content of 

Architecture Framework products and their relations were analyzed.Then,the design method and steps of system architecture were proposed.At last

. 

executable model is simulated and validated. Fest results show the correctness and rationality of FMCS architecture which is benefitiat for the realizati0n 

of complex systems. 

关键词:DODAF;FMCS;体系结构;模型验证 

Key words:DODAF;FMCS;system architecture;model validation 

中图分类号:TP311.52 文献标识码:A 文章编号:1006—4311(2010)19—0121—03 

0引言 

全视图ALL—View 

无人机飞行管理计算机系统(FMCS),是一个管理和协调无人 

机完成多项任务,如导航、飞行控制、图像识别、航迹规划、航迹跟 

踪、火控解算等的复杂系统。复杂系统的体系结构是系统设计要考 

虑的关键问题。合适、可靠的体系结构建模关系着系统构建的成败。 

体系结构框架,是一种用于信息系统体系结构开发、描述和集成的 

统一方法。这种方法提供了理解和管理复杂的信息体系结构设计的 

种机制。DODAF(美国国防部体系结构框架)是目前应用最为广 

r 速 l

用范围和目的 

运作视图 

五一] 

j 

运作需求,明确运 

泛也最为成熟的一种体系结构框架,它用来描述系统的顶层、运作 

需求和构架I 。本文依据DODAF,分析了体系结构产品的内容和相 

互逻辑关系,给出了一个无人机FMCS具体的设计步骤,并对所设 

计的体系结构模型进行了验证。 

1 DODAF概述 

一\ 、 、  

换 

达成互通性系统开 

发或采购之技术标;隹 

1.1 DODAF体系结构框架DODAF提出了体系结构描述的4 

个视图:全景视图(ALL—View)、作战视图(Operational View)、系统视 

图1视图基本关系 

图(Systems View) ̄n技术视图(Technical Standards View)。每个视图都 

(概述与摘要),OV一1(高级运作概念图),OV一2(运作节点连接描 

包含一部分产品集,它们之间的相互关系如图1所示[31。四个视图 

述),OV一5(运作活动模型),SV一1(系统接口描述)和Tv一1(技术标 

主要是从作战需求、系统实现和技术支持三个方面共同描述系统。 

;隹概览),本文就是在此基础上根据系统需要设计体系结构。 

DODAF为体系结构设计提供了共同的原则和实践期望标;隹, 

1.2 DODAF建模思想DODAF作为一个框架提供开发体系结 

在实际应用中,描述特定的体系结构需要根据体系结构的目的、范 

构的规则、标;隹和关系,它为体系结构设计提供了一个总体的建模 

围和用途选择需要开发的产品,一个系统的体系结构设计并不需要 

思维,如图2所示,它的特点是:个别系统都能独立运作与管理、可 

对全部26个产品进行开发O DODAF规定的最小产品集有:AV一1 

分布于各个地方、可各自成长,但一旦连接起来,就能呈现出整体的 

作者简介:庄丽葵(1963一),女,江苏南京人,助理研究员,研究方向为控制系 

特殊效果。而DODAF就是从通讯系统和组织两个不同的观点观察 

而这两个观点蕴含着密切的关系,所以将两个观点并列在一 

统数字化设计;曹云峰(1964一),男,浙江湖州人,教授,博导,研究 

系统,

方向为飞行控制与导航、计算机视觉等方面。 

起。过去传统的系统工程偏向由上而下的分解思想,分解成小部分, 

在ASP.NET MVC中,当某个按钮被点击,不要再习惯性想到应该在 系统的测试及维护。 

相应的aspx.CS中有个事件处理方法,而应该想到有某个Controller 

参考文献: 

[1]叶卫红.基于ASP.NET MVC框架的Web设计lJ}_河北北方学院学院 

中有个Action来处理这个事件。实际上,在ASP.NET MVC中,提倡 

(自然科学版),2009,(12). 

不要在aspx.CS中写任何逻辑代码。甚至应该当他们不存在。 

【2J郑逸凡.ASP.NET MVC技术研究IJ1.光盘技术,2009,(06). 

4.3数据绑定的变化对于列表式表格数据,可以采用 

[3]赵晓东,张正礼,许小荣.ASP.NET 3.5从入门到精通[M】.清华大学出 

GridView绑定数据,但是,在ASP.NET MVC中,将不在被提倡,应该 

版社,2009,(7). 

自己处理数据的显示。 

5小结 

【4]林庆,朱翠苗,郑广成,贾洪艳,吴曼.基于ASP.NET的MVC设计模式 

Jl_计算机工程与设计,2008,(O1). 

MVC设计模式已经风行多年,而且MVC设计模式在大型的 

的研究I

[51陈晓丹,郑毅.ASP.NET开发环境下的webF0丌n与MVC设计模式『J]. 

Web应用系统中已经逐渐成为必须采用的架构。使用ASP.NET 

武汉工程职业技术学院学报,2009,(6). 

MVC模式设计,我们可以清晰的、关注被分离的代码,更容易进行 


本文标签: 系统 体系结构 模型 视图 方法