APP下载

LINQ技术在高校教学管理信息系统中的应用

2012-03-17张国军

湖北理工学院学报 2012年4期
关键词:学籍教学管理编码

张国军 张 炜

(1湖北理工学院计算机学院,湖北黄石435003; 2黄石经济技术开发区城建维护公司,湖北黄石435003)

0 引言

随着我国高等教育事业的大众化,高等学校的办学规模不断扩大。完全学分制的逐步推行,使教学资源日益紧缺,教学管理部门的工作量与管理难度越来越大。管理工作稍微不到位,就容易出现教学事故。因此,在现代高校教学管理中,教学信息化、数字化、智能化是高校现代化管理的重要内容[1]。

结合高校教学管理信息化、数字化的需求,作者设计并实现了高校教学管理信息系统。本论文阐明了系统实现方案以及在系统开发过程中,LINQ[2-3]数据访问技术在高校教学管理信息系统的应用。该系统为学生、教师、教辅及相关管理人员提供了简便、快捷的信息化服务,为教学管理部门的智能决策提供了强有力的支持。LINQ数据访问技术在高校教学管理信息系统实施中的应用表明,这种编程模式降低了编码难度,提高了编码效率,为开发者提供了一个更开放、更灵活的编程环境,使开发者获得了更简化的编码并缩短了开发周期,从而为用户提供更高的生产力。

1 系统的设计方案

根据系统的业务需求及职能,系统可分为教学计划管理、教学资源管理、排课管理、选课管理、考务管理、实践教学管理、学生成绩管理、学籍管理、教学考评管理、决策支持管理10个子系统。教学管理信息系统的主要模块结构如图1所示。

图1 教学管理信息系统的主要模块结构

1)教学计划管理子系统的主要功能:录入和维护理论与实践教学环节信息,设置教学计划,产生开课计划等。

2)教学资源管理子系统的主要功能:校区信息、楼房信息、部门设置和维护,专业信息设置和维护,教职工信息设置和维护,教学场地及管理等。

3)排课管理子系统的主要功能:课表编排。

4)选课管理子系统主要功能:发布选课的有关规定、学生登陆网络平台选课、发布有关课程取消与选课调整信息、自动生成选课表和各种统计分析报表。

5)学生成绩管理子系统主要功能:录入学生成绩、修改学生成绩、查看成绩。

6)学籍管理子系统主要功能:入学报到登记、初始学籍档案生成、分班管理、电子学历注册、毕业生电子注册数据、高基报表及学籍异动统计表生成、学生奖惩情况记录、学生学籍异动数据生成、学籍卡片、毕业生档案、学生名册管理。

7)考务管理子系统主要功能:缓考登记,考试时间、地点、课程、监考人员管理,考试证件打印,生成课程考试安排表、监考人员安排表、教师考试安排表和全校考试安排表,登记缺考、考试舞弊等信息。

8)实践教学管理子系统的功能:实践教学教师、地点、时间管理与维护,军训、实习、课程设计、毕业设计的管理。

9)教学考评管理子系统的功能:设置教学评估体系、教学考评管理、教学人员的工作量计算与管理。

10)决策支持管理子系统的功能:对学生、教师、成绩等数据进行统计与分析,并采用基于粗糙集与支持向量机等方法对教学数据进行智能挖掘。

2 LINQ技术在系统实施中的应用

本系统采用 Microsoft Visual Studio 2008和.NET Framework 3.5作为B/S模式下的前台实现工具,采用 PowerBuilder作为 C/S模式下的实现工具,使用 SQLServer2005作为DBMS,使用LINQ作为B端的数据访问技术。

LINQ是语言集成查询(Language-Integrated Query)的简称,是 Microsoft Visual Studio 2008和.NET Framework 3.5中一项突破性的创新[4-5],在对象领域和数据领域之间架起了一座桥梁,允许使用独立于数据源的一致模型来查询和操作数据,是各种类型数据的统一编程模型。

LINQ的体系结构如图2所示。LINQ技术在系统实施中的应用如下。

图2 LINQ的体系结构

2.1 应用LINQ实现创建教学管理系统的类模型

在管理信息系统的网站中添加“LINQ to SQL”类,将管理信息系统中的数据对象,如数据表、视图、存储过程等添加到.Layout中,如图3所示。

图3 教学管理系统的类模型

Microsoft Visual Studio 2008会自动生成DataClassesDataContext类与数据库的相关对象关联,不需要用户编写太多的程序代码,并保存到DataClasses.Designer.cs文件中。在以后的编程中可以直接通过 DataClassesDataContext类对数据对象进行访问。

2.2 应用LINQ实现数据插入

在LINQ中,可以调用 InsertonSubmit函数进行插入操作。

例如:在学生(student)数据表中插入元组,编码如下:

Var关键字用来避免使用泛型语法,它指示编译器查看相关子句中指定的数据源来推断查询变量的类型。如果需要批量数据插入,需要调用泛型的InsertAllOnSubmit函数来实现。

2.3 应用LINQ实现数据查询

在LINQ中,通过调用from…select语句来实现数据查询操作。

例如:把student数据表中的数据检索出,在GridView中显示,编码如下:

查询表达式以from关键字开始,c为范围变量,student为查询的数据源。Var关键字指示编译器查看在from子句中指定的数据源来推断查询变量的类型。LINQ技术实现数据查询并显示查询结果只需要编写4条语句。

2.4 应用LINQ实现数据更新

在查询出数据后,通过调用SubmitChanges ()函数来实现LINQ中数据的修改。

例如:在student表中,修改学号20114200001学生所在系,编码如下:

2.5 应用LINQ实现数据删除

在LINQ中实现对数据的删除,通过调用DeleteonSubmit()和SubmitChanges()函数来实现。

例如:在student表中,删除学号20114200001学生的信息,编码如下:

如果需要进行批量数据删除,需要调用泛型的DeleteAllOnSubmit方法来实现。

2.6 LINQ与存储过程

存储过程(Stored Procedure)是利用 SQL Server所提供的 Transact-SQL语言所编写的一组程序,是为了完成特定功能的SQL语句集。存储过程通常可以改善系统性能,能更方便维护系统,有时还可以减少网络流量,进一步提高系统的安全性。

例如:在 student表中,插入一个元组,LINQ中调用存储过程的步骤如下:

1)打开 SQL Server2005 DBMS,在查询分析器下创建存储过程。

3 LINQ同ADO.NET比较

在 Microsoft Visual Studio 2008中,ADO.NET同LINQ一样,也是一种快速、高效的数据库访问技术。为了便于对LINQ和ADO.NET进行比较,实验采用应用频率高的数据查询SELECT来进行。

例如:采用ADO.NET实现对student表数据的查询并显示查询结果,编码如下:

可以看出:LINQ技术实现数据查询并显示查询结果只需要4条语句,而采用ADO.NET实现数据查询需要编写10条语句,其他情形也类似。因此,在处理数据访问时,LINQ技术能够提高编码效率,降低数据访问的编码难度。它为开发者提供了一个更开放、更灵活的编程环境,使开发者获得了更简化的编码并缩短了开发周期,从而为用户提供更高的生产力。

4 结束语

结合高校教学管理信息系统的实际需求,本文采用LINQ技术,设计并实现了系统。在高校教学管理信息系统实施中使用LINQ数据访问技术,降低了编码难度,提高了编码效率,为开发者提供了一个更开放、更灵活的编程环境。

[1] 邱文教,陶成.高校教务管理现代化的探索与实践[J].云南民族大学学报(哲学社会科学版),2005(5):47-49

[2] 王杰瑞,孙更新,宾晟.ASP.NET3.5从入门到精通[基于C#][M].北京:科学出版社,2009: 355-467

[3] 史潘加斯.ASP.NET3.5入门经典[M].张云,译.北京:清华大学出版社,2008:255-356

[4] 侯利军.精通LINQ数据库访问技术-基于C#[M].北京:人民邮电出版社,2008:15-257

[5] 陈娟,方亮,杨帆,等.基于 Framework3.5的LINQ技术研究[J].技术创新,2009,26(4): 155-157

猜你喜欢

学籍教学管理编码
高校学籍异动学生管理工作的思考
教学管理信息化问题研究
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
学籍学历电子注册管理系统在学籍管理中的应用与实现
新时期高中教学管理改革与实践
谈教学管理的艺术
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
Genome and healthcare
教育部:不得将学籍作为中小学生入学和转学条件