基于BS的网上考试系统设计与实现.doc

上传人:h**** 文档编号:138336 上传时间:2018-07-10 格式:DOC 页数:65 大小:438KB
下载 相关 举报
基于BS的网上考试系统设计与实现.doc_第1页
第1页 / 共65页
基于BS的网上考试系统设计与实现.doc_第2页
第2页 / 共65页
基于BS的网上考试系统设计与实现.doc_第3页
第3页 / 共65页
基于BS的网上考试系统设计与实现.doc_第4页
第4页 / 共65页
基于BS的网上考试系统设计与实现.doc_第5页
第5页 / 共65页
点击查看更多>>
资源描述

1、 基于 B/S 的网上考试系统的设计与实现 论文关键词: ASP.net B/S 网络考试系统 数据库 论文摘要:随着网络的普及和对教育的重视,各院校各学科的网上考试都具有了必要的使用环境。但是,目前国内的一些网络教学系统的主要功能是教学,不能单独作为考试平台,通用性差,而且系统中对主观题的评阅多是采用人工评阅方式,没有实现真正意义上的自动评分。另一方面,我们所在院校的计算机基础课已开设了多年,但尚在沿用传统的考试形式或使用单机版的考试系统。基于 Web 的网上考试系统的设计与实现就是基于上述目的开发设计的。 本系统采用 B/S 架构作为系统的总体结构,以 Web 数据库技术为依托,利用微软的

2、 ASP.NET 技术,结合 ADO,实现了对 Web 数据库的访问和查询。该设计实现了按题型随机抽题组卷、在线考试、题库管理、系统管理的功能,能够对客观题在线评分。学生用学号登录成功后,阅读考试须知,之后选择考试科目进入考试页面,完成相应科目考试,自动给出考试成绩。系统管理,实现了对题库、考生信息、考试成绩、考试科目的管理。题库管理,实现了对试题的添加、编辑、删除功能;考生信息管理可以添加、修改、删除、查询考生信息,成绩管理可以删除成绩 信息,科目管理主要是修改考试科目信息。 基于 Web 的网上考试系统本身是一个很大的系统 ,尤其试题库部分需要许多人的参与以及大量的投入才能建成。该系统虽然

3、仅仅是完成计算机文化基础和操作系统课程的考试,但却具有良好的实用性与通用性,提供友好的人机界面,具有较好的可扩充性和开放性。 一、 绪论 1.1 网上考试系统的现状分析 在信息技术迅速发展的今天,网络对于大多数人已不再陌生,并且其应用在人们的工作、学习和生活中越来越多地发挥着不可替代的作用。近年来随着软件工程技术、信息通信技术 的快速发展以及计算机网络技术的日趋成熟,网络教育在人们的教育活动中逐步得到普及。网上考试是网络教育不可缺少的组成部分,是网络教育的一个重要环节。 网上考试在国外一些国家已经得到了蓬勃发展,人们选学课程和考试都是通过网上进行的。例如国外一些著名的考试,如 Microsof

4、t 公司的 MCSE(Microsoft 系统工程师认证考试 )、 GMAT(工商管理硕士入学考试 )、托福考试、 GRE(美国研究生入学考试 )等,都是采用网上考试的形式进行的。 在国内,目前绝大多数考试还停留在传统考试方式上,对互联网的真正应用 仅限于一些考试的网上报名工作和网上成绩查询,还没有真正形成网上考试规模。网上考试系统作为现代教育的一个子系统,是保证教育教学质量的重要手段。在传统的考试方式下,组织一次考试要经过出题、考试、评卷、试卷分析等步骤,随着考试类型的增加及考试要求的提高,教师的工作量将会越来越大,并且其工作非常容易出错,在一定程度上说,传统的考试方式已经存在着改革的必要了

5、。 Internet 技术的发展使得考试的技术手段和载体发生了划时代的变化,考试从传统的纸笔考试到计算机辅助考试再发展到基于 Web 的网上考试成为现实。 现阶段, 网上考试系统的主流开发技术已经相当成熟,且很好地适应了动态站点设计和基于 Web 的数据库访问的要求,是当前网上考试软件实现的主流技术之一。在对大量关于网上考试系统资料的研究和学习后,根据工作的需要,针对本校实际情况特别是教学的需求,利用学校校园网已有的基础条件,研究开发适合本校使用的基于 Web 的网上考试系统。 1.2 选题的背景及研究意义 随着计算机科学、网络技术的迅猛发展,在教育领域里,实现网上考试可以充分利用学校现有的计

6、算机软、硬件资源和网络资源实现考试;对于客观题由计算机来完成阅卷,可以将减少人 工阅卷的工作量。 目前常用的网上考试系统主要有两种基本模式:传统的 C/S(客户机 /服务器)模式和新型的 B/S(浏览器 /服务器)模式,所谓 C/S 模式,即数据库(比如,试题库)内容放在远程的服务器上,在客户机上安装相应软件;C/S 结构在技术上虽然很成熟,但该结构的程序往往只局限在小型的局域网内部,不利于扩展。并且,该结构的每台客户机都需要安装相应的客户端程序。当拥有用户量比较多时,如果采用该结构,系统的安装与维护工作比较繁重。同时,由于应用程序直接安装在客户机,客户机直接和数据库服务器交换数据,系统的安全

7、 性也受到一定影响。与传统的基于 C/S 模式的网上考试系统相比, B/S 体系将应用逻辑与用户界面和数据访问相分离,使系统的维护变得简单(只需要改变网页,即可实现所有用户的同步更新),同时简化了客户端的功能,用户只需浏览器即可使用此考试系统,更适宜于互联网上的考试。 在信息网络化的现实面前,我们提出一种基于 Web 的网上考试系统,并用 SQL Sever 2000 数据库与 ASP.NET 技术结合进行了该系统的开发。 1.3 系统基本简介 我们课题组所做的工作不仅仅是参与开发一个完整的在线考试系统,也是一个引 导性的基础研究,是对 .net平台下基于 B/S 结构的软件体系结构、关键技术

8、、实现技术、框架解决方案进行的探索。 本系统采用 ASP.NET、 HTML、 Javascript、 VBScript、图形编辑与数据库等工具,通过基于 WEB 服务器访问 WEB页面,可以不受地点,时间限制,通过宽带上网或其它上网方式,借助 Internet 这一强大、方便的工具,考生可以在互联网上通过浏览器来选择科目、参加考试,管理员可以在互联网上通过浏览器来添加、修改学生信息,添加、修改、删除试题,修改考试科目信息,管理学生成绩;同时还实现有学生 信息查询功能:按班级、学号、姓名等关键字查询,实现对整个系统的管理功能。 系统的主界面主要有考生、管理员入口,根据用户类型,分别进入考试和管

9、理两个不同的页面。其最大的特点是开放性、方便性和灵活性。 二、 系统的关键技术及介绍 在基于 Web 的网上考试系统的设计过程中,主要考虑了以下几方面的问题: (1) ASP.NET 技术; (2) 建立数据库,使用 SQL Sever 2000 来建立; (3) 选择系统的开发模式, B/S 模式; (4) ADO.NET 对象模型; (5) 系统数据库设计。 2.1 ASP.NET技术概况 ASP.NET 是微软公司推出的一种 Internet 编程技术,它采用效率较高的、面向对象的方法来创建动态 Web应用程序。在原来的 ASP 技术中,服务器端代码和客户端 HTML 混合在一起,常常导

10、致页面的代码冗长而复杂,程序的逻辑难以理解。 ASP.NET 是一种独立于浏览器的编程模型,可以在最新版本的 IE、 NetscapeNavigator 以及诸如 Opera 等被广泛使用的浏览器上运行。 ASP.NET 是一种建立在通用语言上的程序构架。一个已编译的、基 于 .NET 的环境,把基于通用语言的程序在服务器上运行。将程序在服务器端首次运行时进行编译,比 ASP 即时解释程序速度上要快很多。微软公司发布了包括 Visual Basic.NET、 C#.NET、 Visual C+.NET 等与 .NET 兼容的语言来创作应用程序。 2.1.1 ASP.NET的优势 ASP.NET

11、 是在服务器上运行的编译好的公共语言运行库代码 ,它可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。 1)世界级的工具支持 ASP.NET 框架补充 了 Visual Studio 集成开发环境中的大量工具箱和设计器。 WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。 2)威力和灵活性 由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性。Microsoft.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。 ASP.NET 也与语言无关,所

12、以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到ASP.NET 时保留基于 COM 的开发中的现有投资。 3)简易性 ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如, ASP.NET页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件并不相同。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。 4)可管理性 ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序

13、。由于配置信息是以纯文本形式存储的,因此可 以在没有本地管理工具帮助的情况下应用新设置。此 “零本地管理 ”哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。 5)可缩放性和可用性 ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求 。 6)自定义性和扩展性 ASP

14、.NET 随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换吉林大学硕士学位论文 ASP.NET 运行库的任何子组件。 7)安全性 借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。 2.1.2 常用到的 ASP.NET 内置对象 Application 对象:对整个 ASP.NET 执行环境而言,一个虚拟目录下的所有 ASP.NET 程序构成了一个 Web 应用程序。在多 任务执行的情况下,来自四面八方的众多用户可能执行同一个 Web 应用程序,这便依赖 Application对象。常用到的场

15、合:聊天室、网页计数器等。 Request 对象:获取从客户浏览器传给服务器端的数据,如接收来自表单的数据。 Response 对象: Request 对象与 Response 对象就像一般程序语言里的 Input 及 Output 命令,若要让服务器端的 ASP.NET 程序能够接收来自客户端的信息,须用 Request 对象;若想将服务器端的信息传递给客户端,须用Response 对象。 Session 对象: Session 对象和 Application 对象极为类似,但 Session 对象的信息只适用于同一位用户,换句话说,一个 Session 对象只属于一位用户。常用到的场合:虚

16、拟购物车、用户登陆网站时用户名的临时存储等。 2.2 利用 SQL Sever 2000 来建立数据库 Microsoft SQL Server 2000 是一种关系型数据库。此种数据库采数据分类表格化的架构,将相关的数据组成表格,表格和表格之间可以有关联性,因此称为关系型数据库。系统管理员可透过应用程序进入服务器,更改数据型态 ,管理及处理服务器资源。 SQL Server 也是一种具备延展性的数据库( scalable database),亦即 SQL Server 可以支持多位使用者同时进入数据库中处理大量的数据。 2.3 Browser/Server 模式 本系统的开发模式 2.3.1

17、 Browser/Server 模式简介 随着网络规模的日益扩大,应用程序的复杂程度不断提高,传统的数据库应用架构已经不能胜任。为了充分利用网络资源,越来越多的信息需要在 www(WoridWideWeb)上发布,实现信息最大程度的共享。 Browser/Serve结构伴随着 Intemet 的发展而很快地发展起来。 Browser/Serve 体系结构是一种三层结构: 第一层,浏览器是表示层,完成用户接口功能。在客户端向 URL(Uniform ResourceLocator)指定的 web 服务器提出服务器请求, Web 服务器用 HTTP 协议把所需文件资料传给用户,客户端接受并显示在

18、WWW 浏览器上。 第二层, Web 服务器是功能层,完成客户的应用功能。即 Web 服务器接受客户请求,以 CGI 或 ASP 与数据库连接,进行申请处理,而后数据库结果返回 web 服务器,再传至客户端。 第三层,数据库服务器是数据层。数据库服务器应客户请求独立地进行各种处理。 Browser/server 系统中的Browser 作为一种通用的浏览器,一般没有任何应用程序; Browser/server 系统中的中间层是 B/S 结构中相当关键的部分,中间层在 Browser/Serve:系统中充当着双重身份 :从 Browser 的角度看,它是 WebServer,而从 DBServe

19、的角度看,它是一个功能丰富的 Client。 2.3.2 Browser/Server 模式的特点 B/S 系统的这三层体系结构的特点 : 友好、统一的图形用户界面 在 Browser/Server 系统中,由于遵循了统一的标准协议,而且使用浏览器作为统一的客户软件,用户无须再花费大量的时间与精力去学习和熟悉不同的系统的使用方法,用户可以把大部分的精力集中在系统的内容上,而不是去记住系统的使用说明书。 减少网络中的数据流量 在 Browser/server 系统中,由于数据的处理工作是由服务器来执行的,因此在读取数据和保存数据时,这些数据只在几台服务器之间传输,不需要通过浏览器与服务器之间的网

20、络。一般 来说,浏览器与服务器之间的网络大都是距离较长而且速度较低的,而服务器与服务器之间的网络则是距离较短而且速度较高的,因此采用Browser/Server 后,可以充分地利用服务器之间的高速连接通路,而减少在浏览器与服务器之间的长距离低速网络中的数据流量。 更好的开放性 开放性是发挥分布式系统优势的基本保障,它为不同厂商生产的产品协同工作创造了条件,但是这些产品还应当遵循统一的标准。在 Browser/server 系统中,采用了一致的 HTTP 协议以及其他一些共同的规则,不同系统之间的冲突将会大大减少。 平台无关性 在 Browser/Server 系统中,程序的主体分布在 Mid-

21、Server 上,客户机上只有一个标准的浏览器,它与服务器之间采用标准的 TCP/IP 及 HTTP 等协议进行通信,因此客户端的平台是相对独立的,它不依赖于服务器方所采用的软硬平台。用户可以自由地选择自己熟悉的平台进行工作。 有效地解决异种数据库联合使用的问题 在 Browser/Serve 系统中,由于采用了 Browser/Mid-Server/Server 的三层体系结构,只需在中间层服务器上安装数据库的驱动程序,或者使用专 门的服务器用作与数据库连接的桥梁。因为程序的主体是运行在中间服务器上的,客户端只是一个浏览器,避免了在客户端重复安装数据库驱动程序的问题,从而可以有效地解决异种数

22、据库联合使用的问题。 客户端的维护工作简单 Brower/Serve 系统中,由于采用了通用的客户软件,维护工作主要集中在服务器端,而服务器是由专门的管理人员集中管理的,对系统的维护相对简单得多。 基于 B/S 结构的 Web 应用体系有如此多的优势,因此本网上考试系统的主体就采用这种 B/S 体系结构。 2.4 ADO.NET 对象模型 ADO.NET 对象模型中有五个主要的组件,分别是 Connection 对象、 Command 对象、 DataAdapter、 DataSet以及 DataReader。这些组件中负责建立联机和数据操作的部分我们称为数据操作组件( Managed Pro

23、viders)分别由 Connection 对象、 Command 对象、 DataAdapter 对象以及 DataReader 对象所组成。数据操作组件最主要是当作DataSet 对象以及数据源之间的桥梁,负责将数据源中的数据取出后植入 DataSet 对象中,以及将数据存回数据源的工 作。 Connection 组件 Connection 对象主要是开启程序和数据库之间的连结。没有利用连结对象将数据库打开,是无法从数据库中取得数据的。这个物件在 ADO.NET 的最底层,我们可以自己产生这个对象,或是由其它的对象自动产生。 Command 组件 Command 对象主要可以用来对数据库发

24、出一些指令,例如可以对数据库下达查询、新增、修改、删除数据等指令,以及呼叫存在数据库中的预存程序等。这个对象是架构在 Connection 对象上,也就是 Command 对象是透过连结到数据源的 Connection 对象来下命令的。所以 Connection 连结到哪个数据库, Command 对象的命令就下到哪里。 DataAdapter 组件 DataAdapter 对象主要是在数据源以及 DataSet 之间执行数据传输的工作,它可以透过 Command 对象下达命令后,并将取得的数据放入 DataSet 对象中。这个对象是架构在 Command 对象上,并提供了许多配合 DataS

25、et 使用的功能。 DataSet 组件 DataSet 这个对象可以视为一个暂存区( Cache),可以把从数据库中所查询到的数据保留起 来,甚至可以将整个数据库显示出来。 DataSet 的能力不只是可以储存多个 Table 而已,还可以透过 DataAdapter 对象取得一些例如主键等的数据表结构,并可以记录数据表间的关联。 DataSet 对象可以说是 ADO.NET 中重量级的对象,这个对象架构在 DataAdapter 对象上,本身不具备和数据源沟通的能力,也就是说我们是将 DataAdapter 对象当做 DataSet对象以及数据源间传输数据的桥梁。 DataReader 组

26、件 当我们只需要循序的读取数据而不需要其它操作时,可以使用 DataReader 对象。 DataReader 对象只是一次一笔向下循序的读取数据源中的数据,而且这些数据是只读的,并不允许作其它的操作。因为 DataReade 在读取数据的时候限制了每次只读取一笔,而且只能只读,所以使用起来不但节省资源而且效率很好。使用 DataReader对象除了效率较好之外,因为不用把数据全部传回,故可以降低网络的负载。 2.5 系统数据库设计 2.5.1 数据库结构及说明 数据库结构是网上考试系统设计方案中的一个重要组成部分,目的在于满足考生、管理员用户实现其操作功能。 2.5.2 用户权 限简介 1.

27、管理员 。 在此系统中系统管理员具有管理用户、管理试题和试卷的权力。他不需注册,在数据库有一个表来存放相关信息。 2.一般用户主要是指考生,参加在线考试。 三、 系统的整体分析与设计 3.1 需求分析 3.1.1 系统需要解决的主要问题 考生进入系统应该进行身份验证。考生进入考试系统后,需要选择考试科目,所以系统还应有考试科目选择的功能。鉴于考试环境一般为机房,考试者之间的距离很近,为了避免考试做弊,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于网络环境, 试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择提交

28、答卷后,应该自动判卷,给出考生分数。 本系统是为了满足在线考试的需求而设计开发的,可在 Internet 上进行实时考试。所以本考试系统应具备的考试系统功能,包括:题库设计和管理,试卷的随机组卷能力,用户在线考试及记录,系统自动评卷,系统数据库管理维护,系统管理和维护。 3.1.2 系统功能模块划分 本在线考试系统可分为两个主要功能模块进行设计,这两个功能模块分别为: ( 1)考生功能模块:考生功能模块可以实现考生登录、选择考试科目、在线考试、完成考试给出分数,如果已经考过,则不能登录考试。 ( 2)管理员功能模块:管理员功能模块可以实现管理员登录、考生信息管理、考试科目管理、题库管理、考试成

29、绩管理。 系统统由一个登陆界面登陆,在登陆时是如果是学生,则用户名为考生学号,如果是管理员登陆,用户名为管理员名,分别从各自己的数据库中查询帐户,并核对登陆密码,然后根据不同的角色进入不同的界面。 3.2 总体设计 本部分介绍了基于 Web 的网上考试系统的总体设计,主 要包括公用登陆模块的设计,学生功能模块的设计,管理员功能模块的设计。 3.2.1 公共登陆模块设计 所有用户都从本模块登陆,登陆界面 (login/)上包括一个文本框用于输入用户名,一个文本框用于输入密码;包括两个按钮,用来区分考生登录,还是管理员登陆。点击登陆后,根据不同按钮的单击事件,连接到不同的 数据库,从相应的数据库表

30、中查询用户名和密码,如查询到,则进入相应的页面,如未查询到,则弹出出错信息,用户点击确定重新输入用户名和密码登陆,图 3-3 示: 图 3-3 用户登录界面 3.2.2 在线考试 模块设计 考生登录后,进入考试须知页面 (know1/),选择考试科目后,若未参加该科目的考试,则进入相应科目考试页面;否则,不能进入考试页面。该页面主要提供了一个 考生选择考试科目的功能,以简单的超链接进入不同的科目考试页面。 3.2.3 管理员功能模块设计 管理员登录后进入后台管理主页面 (classintro/),由该页面可以登录到学生信息管理、科目管理、试题管理、成绩管理页面。 四、 部分页面实现详解 4.1

31、 考试页面的实现 考试页面 (exampage/)可以进行单选、多选、填 空题这些客观题的考试。每一类型题都以一个 Web 用户控件来实现题目显示,试题是随机生成的,每次考试都不同的试卷, 系统以随机抽题来生成试卷,使用了一个随机函数。先在题库 question 表中得到每种题型在每次抽题供抽取的总题数 count= SubjectInfo(Subject),随机选题时应在 1-count 之间选取, temp = Fix(count * Rnd(10)。由于试卷是考前随机抽题而得,考生在第一时间开启试卷,减少了接触试题的人员间环节,也在一定程度上防止了考生将试题传出考场,增强了试题的 保密性

32、其次,为了避免由于得到的随机数相同,而在一份试卷中抽到相同的考题,在设计题库结构时设置了 haveselect 标记字段,标记字段取值为 0 时,该题未被抽取, haveselect 标记字段取值为1,表示该题已被抽取,不能再用。这统在抽题时,首先判断 haveselect 标记字段是否为 0,如果该题已被抽过,则必取新的随机数重新抽取。下面以单选题为例来说明。 /将 haveselect 置为 1,标记该题为已选 Public Function SetReaded(ByVal QuestionID As String) strsql = “update question set havese

33、lect=1 Where id=“ & CInt(QuestionID) ExeSQL(strsql) End Function /将 haveselect 置为 0,该课程所有的考题初始化 Public Sub SetRead() strsql = “update question set haveselect=0 where subjectname=“ & Subject & “ ExeSQL(strsql) End Sub /用随机函数 Rnd()来生成试题号 Public Sub DataBingToRep() strsql = “select top “ & 1 & “ * from

34、 question Where subjectname=“ & Subject & “ AND type=单选题 and haveselect= 0 “ Randomize() count = SubjectInfo(Subject) temp = Fix(count * Rnd(100) If Qds.Tables(0).Rows.Count 0 Then GetRowInfo(Qds.Tables(0).Rows(temp) Else lblQesName.Text = “暂时没有 “ & Subject & “的单选题 !“ End If End Sub /统计课程考题的数量 , 获得

35、count 值 Function SubjectInfo(ByVal name As String) As Integer strsql = “select * from question where subjectname=“ & name & “ AND type=单选题 and haveselect=0 “ Dim cmd As New SqlDataAdapter(strsql, appconn) cmd.Fill(Qds, “Info“) Return Qds.Tables(“Info“).Rows.Count End Function 4.2 管理主页面的实现 管理主页面是管理员进

36、入后台管理后所看到的第一个页面,在 该页面上有 Label 控件显示了管理员名,登录时间信息,一组超链接实现各个页面之间的跳转,以一个表格中加入超链接图片也可以在不同页面之间跳转,该页面主要是管理员欢迎界面,没有什么关键代码,只是超链接的使用。 4.3 学生信息管理页面 (manstudentinfo/)的实现 该页面用 DataGrid 控件显示了学生信息,并实现了分页显示,同时以下拉列表事件来实现按班级查询学生信息,其中班级是从数据库里查询出来的不重复的班级,还以下拉列表提供了按序号、学号、姓名进行的关键字查询,以超链接实现了跳转到添加、 修改学生信息页面。 关键代码解释: /定义数据库连

37、接字符串, Dim conn As New SqlConnection(ConfigurationSettings.AppSettings(“ConnectionString“) /使用 DISTINCT 关键字搜索出数据库中的不同班级, class_name 为下拉列表控件 comdstr2 = “select DISTINCT class from student“ class_name.DataSource = studs.Tables(“student1“) class_name.DataBind() class_name.Items.Insert(0, New ListItem(“全

38、部 “, “全部 “) /使第一项显示为 “ 全部 ” class_name.SelectedIndex = class_name.Items.IndexOf(class_name.Items.FindByText(“全部“) /使用 Response.Redirect 可以将网页转移至另外的网页上,使用的语法结构是 :Response.Redirect 网址,其中网址可以是相对地址 或绝对地址,在此使用Response.Redirect(“addstudentinfo/“)跳转到修改学生信息页面 Session(“studentid“) = s_datagrid.DataKeys(CInt(

39、E.Item.ItemIndex) /使用下拉列表控件的 SelectedIndexChanged 事件,实现下拉列表改变,自动按不同班级查询学生信息 Public Sub class_name_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles class_name.SelectedIndexChanged dblstr = Request.Form(“class_name“) ifsub() End Sub /根据不同的查询条件生成不同的查询字符串 Sub ifsu

40、b() /使用 like %“ & key & “%实现按关键字查询,以下输入学号关键字为来实现查询 If skey = “s_no“ Then comdskey = “ where s_no like %“ & key & “% “ comdstr = “select * from student “ & comdskey End If Session(“str“) = comdstr adp = New SqlDataAdapter(comdstr, conn) ds = New DataSet adp.Fill(ds, “student“) s_datagrid.DataSource = ds.Tables(“student“).DefaultView s_datagrid.DataBind() End Sub 4.3.1 添加、修改学生信息 (addstudentinfo/) 添加学生信息与修改学生信息共用一个页面,在执行不同操作时,传递不同的参数 editstudent,当editstudent 为空值时,显示添加学生信息页面,不为空显示为修改学生信息,并根据参数绑定数据库中的对应的学生信息,显示在相应的文本框或下拉列表中。 关键代码解释: /根据不同 editstudent 参数值显示不同的页面标题,其中 editstudent 为学生 id

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。