欢迎来到天天文库
浏览记录
ID:28254255
大小:279.00 KB
页数:8页
时间:2018-12-08
《基于.net结构软件系统设计框架设计实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、-基于.NET结构的软件系统框架的设计与实现摘要:本文以教务管理系统为例,分析了基于.NET结构的软件系统框架的特点,介绍了采用ADO.NET、实体类、LINQToSQL、ADO.NET实体框架等四种开发技术实现基于.NET结构的软件系统框架。阐述了开发过程中的存在问题,并介绍了LINQToSQL、ADO.NET实体框架等微软最新技术。关键词:软件系统框架;LINQToSQL;ADO.NET实体框架;三层架构中图分类号:TP311文献标识码:A0引言在构建大型的、复杂的企业级项目时,通常需要大量的代码。
2、考虑到细化开发人员的分工、有利于代码维护和代码复用等因素,通常需要将整个应用分为若干个层次。其中,最流行的是三层架构程序设计方法。分层架构体现了“分而治之”的思想:通过将一个大的复杂的问题分解成许多小的相对简单的问题,然后逐个解决。随着高等学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。高校教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。面对庞大的信息量,手工处理方式已经很难跟上现代化管理步伐,随着计算机及通讯技术的迅速发展,就需要有教务管理系统来提高教务
3、管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。教务管理系统的基本功能模块如图1所示:图1教务管理系统的基本功能模块本文以教务管理系统为例,从实际开发的角度来讲述几种在VS.NET2010环境中的软件系统开发中常见的三层架构模型,以及三层架构项目的开发过程和技术要点,从而让大家轻松实现三层架构项目的开发。1使用ADO.NET实现软件系统中的框架设计实际上,在项目开发的过程中,有时把整个项目分为三层架构,其中包括:表示层(UI)、业务逻辑层(BLL)
4、和数据访问层(DAL)。三层的作用分别如下:表示层:为用户提供交互操作界面,这一点不论是对于Web还是WinForm都是如此,就是用户界面操作。我们网站展示给用户看的界面。业务逻辑层:负责关键业务的处理和数据的传递。复杂的逻辑判断和涉及到数据库的数据验证需要在此做出处理。根据传入的值返回用户想得到的值,或者处理相关的逻辑。数据访问层:见名知意,负责数据库数据的访问。主要为业务逻辑层提供数据,根据传入的值来操作数据库。.---用ADO.NET实现三层结构应用系统时,DataSet的主要作用是三层之间数据传
5、递的载体。DataView是DataTable的动态数据视图,我们使用DataView的SortRowFilter属性实现数据的排序、过滤。用ADD.NET实现三层结构应用系统时,数据访问层主要使用的类有:SqlConnection类,实现数据库连接。SqlCommand类,执行SQL命令。SqlDataReader类,读取数据。SqlDataAdapter类,执行SQL命令,返回DataSet。DataSet类,封装用户请求数据。用ADD.NET执行带参数的SQL命令时,我们需要使用参数(Parame
6、ters)集合的Add方法为SQL命令添加参数,包括参数名称、参数类型。业务逻辑层实现数据传递、处理时,首先引用数据访问层,其次实例化数据访问层对象,最后调用数据访问层功能,并实现数据处理。下面我们具体介绍使用ADO.NET实现教务管理系统中的学生信息维护模块的学生信息加载功能。(1)新建一个空的解决方案:TeacherManagerSys,添加表示层、业务逻辑层、数据访问层,并添加各层之间的依赖:表示层依赖于业务逻辑层,业务逻辑层依赖于数据访问层。解决方案中的文件结构如图2所示:图2教务管理系统解决方
7、案中的文件结构(2)实现数据访问层,关键代码如下:publicclassStudentInfoService{stringconStr="DataSource=.;InitialCatalog=eisbook;IntegratedSecurity=True";publicDataSetGetStudentInfo(){DataSetds=newDataSet();SqlConnectioncn=newSqlConnection(conStr);cn.Open();stringsql="select学号,
8、姓名,班级编号,性别,年级,政治面貌编号,民族编号,籍贯编号,身份证号,学籍编号from学生信息";SqlDataAdapterad=newSqlDataAdapter(sql,cn);ad.Fill(ds);returnds;}(3)实现业务逻辑层代码,关键代码如下:usingTeacherManagerSysDAL;publicclassStduentInfoManager{.---StudentInfoServicestudentSe
此文档下载收益归作者所有