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://
l
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
I
f
Home,所以,在默认值下http://loealhost/Home/Index和http:g
a
,
.
一、
\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模式设计,我们可以清晰的、关注被分离的代码,更容易进行
版权声明:本文标题:基于ASP.NET的MVC设计模式探析 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1711607127a602053.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论