基于ASP.NET MVC + Entity Framework的港口设施维护管理平台设计与实现

2016-05-11 06:50尚东方毕金强辛全波王瑞玺
中国新通信 2016年7期
关键词:组件架构港口

尚东方 毕金强 辛全波 王瑞玺

【摘要】 通过信息化手段来推动港口设施维护管理工作科学、高效的开展有着深刻的重要性,本文通过采用B/S架构,使用ASP. NET MVC及Entity Framework技术设计实现了港口设施维护管理平台,探讨了系统的架构设计及AOP技术在系统中的应用。

【关键字】 ASP.NET MVC Entity Framework AOP 港口设施维护 信息化

一、引言

近几十年来,我国港口经历了5次较大的建设高潮。在这几次港口建设高潮中建成的许多港口设施的使用年限已超过40年,这些码头、堆场、仓库等的技术状况不容乐观,其中很多都是带病工作。通过信息化手段对港口设施进行高效、精细、智能化的管理对保障港口安全生产运行有重要意义。

本文通过信息化技术手段,在.NET平台下设计与实现了港口设施维护管理平台,对港口设施的技术台账、设施维护情况进行信息化管理,提高了港口管理部门、港口企业在港口设施维护管理工作中的信息化水平。

二、相关技术

2.1 Web开发架构

随着Web开发技术发展日趋成熟,目前信息管理系统的开发越来越多地从单机模式、客户机/服务器模式发展到采用基于浏览器的 B/S架构模式。而B/S架构的应用系统也不断发展并细分,以表示层(UI)、业务逻辑层(BLL)、数据访问层(DAL)组成的三层Web架构被广泛应用。其中UI层负责用户操作界面的显示,与用户交互;BLL层是应用系统的关键,它负责接收用户发出的请求,并进行处理,并把处理结果返回给UI层,在处理业务逻辑的过程中将要持久化的信息通过DAL层对数据库进行操作,将数据保存至数据库。三层架构使得系统层次划分更加清晰,也使得各层之间的耦合度降低,利于系统的组件的重用与功能的扩展、维护。

2.2 MVC

MVC是二十世纪八十年代为Smalltalk-80发明的一种软件设计模式,最早应用于桌面应用中。MVC中的三个重要组成部分分别是模型(Model)、视图(View)、控制器(Controller)。其中View层负责界面显示,其显示的内容是由Controller控制的,Controller做为整个架构中的枢纽部分,一方面负责接收用户的输入,根据用户请求控制输出,另一方面负责与后台Model进行交互,Model是负责系统业务逻辑操作的核心组件,当接收到Controller的命令后,执行相关的业务逻辑操作。MVC在传统Web架构之上更加清晰的划分出了各组件的功能职责,加大了代码的重用性与适用性,而且更好的解决了Web应用程序难以进行单元测试的问题。

ASP.NET MVC中MVC模式在.NET平台下的具体实现,它是由Microsoft推出的可重用功能组件,目前最高版本为5.0,其在功能、性能、安全性上有了较大保障。

2.3 Entity Framework

Enity Framework(简称EF)是由Microsoft开发的,目前已托管到开源社区的.NET ORM(Object Relational Mapping)中间件框架。ORM将业务对象与数据库中数据进行映射,实现数据库物理层次之上的抽象的同时,还提供的相应的API,使用户不用关于如何操作数据库,操作什么类型的数据库,通过EF,无需创造大的数据访问层,减少代码量,提高开发效率; EF中分为三个层级:概念模型层(Conceptual Models)、存储模型层(Storage Models)、映射层(Mappings),概念层对应系统中的业务模型,存储模型层对应数据库的具体表、视图、存储过程,映射层负责概念层与存储层的关系映射,清晰的层次划分与映射标准保证了EF对异构数据库的支持能力,目前EF原生集成对Ms SQL Server的支持,Oracle官网也提供ODT工具来实现EF对Oracle数据库的支持,另开源数据库MySql,文件型数据Sqlite等也都能与EF无缝集成,只需使用不同的组件来搭建相应的存储模型层与映射层,便能使EF支持不同的数据库,而无需更改业务逻辑代码,从而降低应用系统与数据库系统的耦合。

2.4 AOP

AOP(Aspect Oriented-Programming),指面向切面的编程。其主要思想是将业务逻辑中的通用功能部分从整个系统中剥离出来,形成单独的功能组件,并通过相应的切入点与系统中的领域业务逻辑进行关联,从而实现通用功能组件的重用。在现有的绝大多数应用系统中,一些功能是通用且本质上是相同的,如日志记录、用户认证、用户授权、异常处理、性能监视与优化等。这些功能被使用的方式是相同的,且与领域业务逻辑无关。通过AOP能很好的将这些通用功能与领域业务逻辑很好的解耦,而且能通过配置的方式动态给应用系统添加或改变特定功能。

ASP.NET MVC中有相应的技术接口来支持AOP,因此在本文中的港口设施维护管理平台便采用了AOP技术来对应用系统中通用功能进行了切片处理,从而达到了通用功能的重用,使用开发人员更加关注领域业务逻辑,从而进一步提高开发效率。

三、系统功能设计与实现

系统的整个架构图如图所示。架构从下到上分别分为数据库、Web运行时,MVC运行库。其中数据库采用Ms SQL Server 2008,将数据库表分为台账数据库、维护数据库、系统数据库等几个逻辑库。整个Web系统运行在.NET Framework 4.5运行时之上,通过将ADO.NET与Entity Framework相结合来实现数据库的增删改查,通过对ASP. NET MVC的IFilter接口进行扩展来将AOP技术进行有效融合,来实现系统的认证、授权、日志记录、异常处理等的功能,

四、结语

本文从港口设施维护管理信息化的需求出发,通过.NET平台的MVC技术实现了B/S架构的港口设施维护管理平台的设计与实现,实践证明,通过ASP.NET MVC + Entity Framework技术相结合,能很好的满足港口设施维护管理平台的技术架构需求,MVC架构的应用能很好的保证系统的可扩展性与可测试性,通过Entity Framework来实现数据操作层的开发,能有较好的开发效率。目前该平台已上线运行,且运行状态良好。

参 考 文 献

[1] 赵立鹏,张建国等. 对港口设施维护与管理对策的思考[J]. 港工技术. 2014(2).

[2] 马鹏烜. 基于Entity Framework数据持久化技术浅析. 电脑与信息技术[J]. 2011(8).

[3] 徐朝辉,樊银亭. MVC设计模式在.NET三层结构开发中的研究和实现[J]. 北京电子科技学院学报. 2007(6).

[4] 董源,李培军,许舒人. 基于AOP的数据库应用安全控制的设计与实现[J]. 计算机系统应用. 2015(12).

猜你喜欢
组件架构港口
《威海港口》
基于云控平台雾计算架构的网联汽车路径控制
Fog
创建Vue组件npm包实战分析
光伏组件热斑对发电性能的影响
智能机械臂
港口上的笑脸
去港口走走
VIE:从何而来,去向何方
企业架构的最佳实践