ASP.NET 基于Web网上选课系统的设计与实现(论文+源码)_Nueve

网上选课系统的设计与实现

摘  要

随着教育改革的不断深化,建立一套能够适应这些改变的行政管理方案也就显得尤为重要。在高等院校的日常工作中,每个学期都要面临学生的选课工作。以往在选课工作的各个阶段都是手工操作,不但效率低下、工作繁琐,而且容易出错,于是开发一套适合校情的网上选课系统便成为了教务处的迫切需求。

本文设计是根据部分学校的实际情况,在Visual Studio 2005环境中,利用ASP.NET、SQL Server数据库等技术开发了基于B/S模式的网上在线选课系统。在设计中完成了院系、专业、课程、教师、学生信息的管理功能及在线选课、查看选课学生、权限限制等功能。经测试,此系统满足教务系统用户需求,能够促进当前高校教务工作的管理水平,有一定的实际应用价值。

关键词:选课;SQL Server;ASP.NET;教务管理

The Design and Implementation of an Online Course-Choosing System

Abstract

With the continuous deepening of the educational reform, the construction and development of universities play an increasingly important role to raise the overall quality. For this, to establish an administration solution to adapt these changes is particularly important. In the day-to-day work, each student is faced with the course-choosing. For the past, in each stage, the work has done not only inefficient, cumbersome, but also prone to error. So an Online Course-Choosing System which is suitable for the school conditions becomes a exigent demand.

This project is based on some university’s basic needs and developed by Visual Studio 2005 and ASP.NET, SQL Server. This system completed the function of department management, major management, course management, teacher management, student management and online-course-choosing and so on. When the B/S system in working, the Users only need a personal computer can access the site for completing course-choosing and relating information management. This system can meet the current college's needs.

Key words: Course-Choosing; SQL Server; ASP.NET; Education Manage

目  录

1 引言

1.1 课题背景

1.2 课题目标

1.3 课题意义

2 开发平台、相关技术的介绍

2.1 ASP.NET

2.2 SQL Server

2.3 C#简介

3 需求分析

3.1 应解决的问题

3.2 系统架构

3.3 设计原则

3.3.1 实用性原则

3.3.2 可扩展性与可维护性原则

3.3.3 安全可靠性原则

3.3.4 用户界面设计原则

3.3.5 数据库设计原则

3.4 中间件引用

4 系统设计与实现

4.1 数据库设计

4.2 模块设计

4.2.1 登录模块设计

4.2.2 院系管理模块设计

4.2.3 专业管理模块设计

4.2.4 课程管理模块设计

4.2.5 学生管理模块设计

4.2.6 教师管理模块设计

4.2.7 学生个人信息维护模块设计

4.2.8 选课模块设计

4.2.9 担任课程查看模块设计

4.2.10 选课学生信息查看模块设计

4.2.11 数据库链接设计

5 部署与测试

5.1 部署图

5.2 模块测试

结论

参考文献

致谢

声明

  1. 引言

“选课”是现在高校行政管理工作中一项很重要的课题。而且是每个学期都必须要面对的问题。选课工作做不好,学生不知道自己将要学习的课程,老师也不知道自己将要讲授的课程,教务处的排课计划、教室安排等其他调度工作也无从做起。因此,如何解决高校教务管理中的选课工作便成为了如今各大高校面临的很实际的问题。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。应用计算机对高校教务信息工作进行辅助,具有人工管理所无法比拟的优点。例如:检索迅速,查找方便,可靠性强,存储量大,保密性能好等。这些优点能够极大地提高教务工作的质量和效率,也是高校教务工作科学化,规范化,信息化管理的重要条件。因此,开发在线选课系统很有必要。

计算机在线系统在现代社会已经深入到各行各业,由于计算机技术的迅速发展和普及,在线选课系统其开发主要包括后台数据库的建立和维护以及前端WEB应用程序两个方面。本文是在Microsoft.NET框架的集成环境中使用Windows.NET平台,C#语言,SQL Server数据库进行开发的。完成了对选课相关信息的计算机管理,以及对信息的添加,修改,删除等计算机管理工作。在文中对相关的技术进行了描述,对系统的各个子系统的功能,设计思路及设计方法都作了详细的描述。

1.1 课题背景

随着进几年高校的持续扩招,学生人数逐年增加。为了满足广大学生的求学需要,各个高校的师资力量、硬件配置也随之增强。这样一来,日常行政部门的工作也就越来越繁重,这一点在选课这块显得尤为突出。而传统的手工操作,即费时又费力,而且容易出错,工作效率较低。因此,拥有一套实用、高效、完善的在线选课系统就显得尤为重要了,它可以提升高校的教育质量和教学管理质量,提高工作效率,降低行政成本。

1.2 课题目标

设计并实现一套完整统一、技术先进、高效稳定、安全可靠的基于B/S架构的网上选课系统。

1.3 课题意义

通过网上在线选课系统的实现,不仅可以提高自己的开发经验,也解决了实际的问题,提高了学校的办公管理的效率,减少了工作出错的几率,节约了资金成本。

2 开发平台、相关技术的介绍

2.1 ASP.NET

ASP.NET 是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的 Web 应用程序。与以前的 Web 开发模型相比,ASP.NET 提供了数个重要的优点:

  • 增强的性能。

ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。

  • 世界级的工具支持。

ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。

  • 威力和灵活性。

由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性。.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。

  • 简易性。

ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。

  • 可管理性。

ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。

  • 可缩放性和可用性。

ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。

  • 自定义性和扩展性。

ASP.NET 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换 ASP.NET 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。

  • 安全性。

借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。

2.2 SQL Server

随着计算机技术的不断发展,信息化管理成都的不断提高,数据库技术在信息管理中的作用日益重要。Microsoft SQL Server是目前使用最广泛的数据库之一,它与Windows网络操作系统的无缝集成,智能化的内容管理,强大的功能,使它得到大量用户的喜爱。

数据库是数据管理的最新技术,是计算机科学的重要分支。多年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。

在SQL Server中,使用的是T-SQL语言,T-SQL是ANSI SQL的加强版语言,它提供了标准的SQL 命令,由于SQL语言功能丰富、语言简洁,使用方法灵活,倍受用户和计算机业界的青睐,被众多的计算机公司和软件公司采用。经过多年的发展,SQL语言已成为关系数据库的标准语言。

SQL语言主要有数据定义语言、数据操纵语言、数据控制语言和其他类语言要素组成。T-SQL的分类也有类似于SQL语言的分类,不过做了许多扩充。T-SQL语言的分类如下:变量说明语句、数据定义语言(用来建立数据库、数据库对象和定义其列,大部分是以CREATE 开头的命令)、数据操纵语言(用来操纵数据库中的数据的命令,如:SELECT、INSERT、DELETE等)、数据控制语言(用来控制数据库组件的存取许可、存取权限等的命令,如:GRANT 等)、流程控制语言(用于设计应用程序的语句 ,如:If …While和Case等)、内嵌函数(说明变量的命令)、其他命令(嵌于命令中使用的标准函数)。

在数据库中,数据查询是通过SELECT语句来完成的。SELECT语句可以从数据库中按用户要求检索数据,并将查询结果以表格的形式返回。当然用户在查询数据库时往往并不需要了解全部信息,而只需要其中一部分满足某些条件的信息。在这种情况下就需要在SELECT语句中加入条件以选择数据行,这时,就用到WHERE子句 。WHERE 子句中的条件是由表达式以及逻辑联结词AND、OR和NOT等组成。用户在进行查询时,会出现重复结果,这时就需要使用DISTINCT关键字来取消重复部分。在WHERE子句中,可以使用谓词LIKE来进行字符串的匹配检查。当用户要对查询结果进行排序时,就需要在SELECT语句中加入ORDER BY子句。在ORDER BY子句中,可以使用一个或多个排序,要求其优先级次序从左到右。

一个数据库能否保持信息的正确性、及时性、很大程度上依赖数据库的更新功能的强弱与数据库的实时更新能力,这些操作包括插入、删除、修改,也成为更新3种操作。

SQL Server是Microsoft公司推出的SQL Server数据库管理系统,它使得用户能够更方便,更快捷地管理数据库和进行系统开发。基于要求数据库的吞吐量和稳定性较高,在线选课管理系统的开发选择了该数据库。

2.3 C#简介

C# 是由Microsoft开发的一种新型编程语言,由于它是从C和C++ 中派生出来的,因此具有C++的功能。同时,由于是Microsoft公司的产品,它又同 VB一样简单。对于web开发而言,C#像 Java,同时具有Delphi的一些优点。C#具有以下的优点:

A.简单

1.C#中指针已经消失。

2.不安全的操作,比方说直接内存操作不被允许了。

3.C#中"::"或"->"操作符是没用的。

4.因为它是基于.NET平台的,它继承了自动内存管理和垃圾回收的特点。

5.原始数据类型可变的数据范围像Integer, Floats等。

6.整形数值0和1不再作为布尔值出现.C#中的布尔值是纯粹的true和false值而且没有更多的"="操作符和"=="操作符错误."=="被用于进行比较操作而"="被用做赋值操作。

B.现代

1.C#建立在当前的潮流上,对于创建相互兼容的,可伸缩的,健壮的应用程序来说是非常强大和简单的。

2.C#拥有内建的支持来将任何组件转换成一个web service,运行在任何平台上的任何应用程序都可以通过互联网来使用这个服务。

C.面向对象的

1.C#支持数据封装,继承,多态和对象界面(即java中的interface关键字)。

2.(Integer,Float, Double)在java中都不是对象,但是C#引入和结构体(struts)来使原始数据类型变成对象int i=1;String a=i Tostring();//转换(或者)Boxing。

D.类型安全

1.在C#中我们不能进行不安全的类型转换像将double转换成Boolean.。

2.值类型(常量类型)被初始化为零值而引用类型(对象和类被编译器自动初始化为零值.。

3 需求分析

3.1 应解决的问题

实现教务处、教师及学生对选课工作的需求

提高对系统开发的认识与经验

将一些新的技术应用带到系统中来

保证系统的可维护性与可扩展性

3.2 系统架构

系统在选用结构的时候,有B/S、C/S、Smart Client(智能客户端)三种可能的方案。它们各有各的优缺点。

  • B/S架构

B/S架构的优点在于客户端和服务器通过Intranet进行数据交换,客户端基于统一的WEB浏览器,减少了投资,解决了系统维护升级的问题,另外只有极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,这也就充分保护了数据的安全。虽然如此,B/S结构还是有很多的不足,其中最大的缺点是在界面操作上具有很大局限性,用起来很难,开发起来也很费钱。

  • C/S架构

采用C/S结构可以减轻服务器运行数据负荷,数据的储存管理也较为透明,最重要的是开发较为迅速。而它的缺点也是不少,它会造成高昂的维护成本,且投资大,维护不方便。在实际开发中,部署不如B/S方便。但由于它能快速开发出较为使用的用户界面,而且可以将部分运算转移到客户端来,所以是一个值得考虑的方案。

  • Smart Client

Smart Client是下一代客户端软件的代表,它可以充分利用终端设备的优势(Full PC、PDA、Phone)、能够调用Web Service、支持在线和离线两种状态、能够如同Web应用程序一般简单方便的部署。由于这套系统的目标客户是教务处负责排课的老师,因此它不会涉及到对终端设备的支持,但是方便部署这一点确实需要的,因为这正是C/S的缺点。

通过上边对三种结构的简单介绍,并考虑到本系统面向的对象主要是广大的在校学生,采用B/S模式可以最方便的实现系统的部署,而系统并不涉及大量的运算,无需考虑服务端会超负荷,因此本系统最终决定采用B/S的方案。

3.3 设计原则

3.3.1 实用性原则

要力求最大限度地满足实际工作的需要,充分考虑各业务层次、各管理环节数据处理的实用性,把满足客户生产和管理业务作为第一要素进行考虑。

3.3.2 可扩展性与可维护性原则

为适应将来的发展,系统应该具有良好的可扩展性和可维护性。系统设计尽可能模块化、组件化,使应用系统可灵活配置,适应不同的情况。系统的可扩展性应包括能接纳已有的系统和在今后系统软硬件扩展时,能有效地保护已有的投资。特别是在应用需求变化时(应用与系统的需求往往提不全或者经常会变化),有一个较好的应用平台,能容易地加以调整。系统易于扩充升级,既能满足当前业务的需求,又为今后的扩充留有空间。

3.3.3 安全可靠性原则

网站系统与数据库系统的设计要做到安全可靠,防止非法用户的入侵。数据库的备份策略恰当,以防灾难性事故发生。

3.3.4 用户界面设计原则

图形化原则:用户界面的设计应做到美观大方。系统的设计需要考虑用户的计算机水平,用户界面应直观、明了、条理清晰,做到简单易用,没有计算机专业背景的用户也可以轻松的使用本系统完成选课及其他管理工作,实现“傻瓜型”管理——易学、易用、易管理。

3.3.5 数据库设计原则

对数据库的设计因该体现一致性、完整性、安全性、可伸缩性和规范化

3.3.6 中间件引用

在系统设计中,为了方便对数据库的操作,系统引用了一个微软的开源中间件Microsoft.ApplicationBloks.Data.dll,这个中间件封装了几乎所有的数据库操作以及对数据库异常的处理,使项目在开发的时候省下了不少时间。

图4-1 数据库关系图

图4-9 登录界面截图

                       

图4-10 院系管理界面截图

图4-11 学生个人信息维护界面截图

图4-13 教师查看担任课程界面截图

图4-14 教师查看选课学生截图

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值