基于.NET的网络选课系统实现(含源码)
基于.NET的网络选课系统实现[20191207132015](含源码)
摘 要:现在的网络技术越来越发达,大学生选课也趋向于网络化,所以我就网络选课这个课题设计了网络选课系统。本系统基于Asp.Net的三层架构和Sql Server 2008数据库来开发。本系统分为4个模块:管理员模块、教师模块、学生模块和公共模块。其中管理员模块包括学生管理、教师管理和课程管理3个子模块。教师模块实现查看本教师所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。学生模块实现学生选课,查看、修改自己的选课信息。公共模块实现用户的身份验证、密码修改、退出系统等功能。而且我还就管理员模块增加了所有用户登录时间查询和学生选课时间查询,这样能就对学生选课有更详细的管理。
在我国大部分高校实行学分制,学分制是让学生有自主权,可以自主选课。而且,学生选课会遇到很多问题,花费的时间和精力也会很多。但是只要用了网络选课系统,就可以方便的对选课数据进行查看和统计,也可以避免大部分人为产生的错误。
关键字:网络选课系ASP.NetSqlServer三层架构
目 录
1. 绪论 1
1.1课题研究背景 1
1.2课题研究目的和意义 1
2. 系统分析 3
2.1网络选课系统的定义 3
2.2可行性分析 4
2.3需求分析 4
2.3.1各模块功能 4
2.3.2各模块遇到的问题 4
2.4系统开发环境和技术介绍 5
3.系统设计 7
3.1网络选课系统的流程图 7
3.2数据库设计 8
3.2.1数据字典 8
3.2.2各表之间的关系 12
4.系统实现 13
4.1数据库的连接 13
4.2系统的功能实现 15
4.3关键代码 19
4.3.1学生选课 19
5. 系统测试与维护 22
5.1系统测试 22
5.1.1测试 如表5.1 22
5.1.2测试结果 如表5.2 23
5.2系统维护 24
总结 25
参考文献 26
致谢 27
1.绪论
1.1课题研究背景
随着网络的发展,网络选课系统成为教务管理系统中一个必不可少的组成部分,可以实现让学生在网络上进行课程的选择,教师也可以通过网络来提交学生的成绩和查看课程选修情况等。是高校实现无纸化办公的一个必备系统。因此网络选课系统是为了方便学生和教师而开发出来的,由于现在的学校都是固定的模式,学生只要按照学校规定的课程去上课就行了。这已经不适用现在的大学了,由于现在的大学自由度很高,这样上课方式却限制了学生的发展,毕竟每个学生都有自己擅长和不擅长的,不能把所有人都一概而论。就像古话说的,要因材施教,但大学老师资源有限,不可能为了每个学生制定详细的学习计划,所以现在把选择的权利交给了学生。因为现在网络技术的发达,大家都可以通过网络联系在一起,所以学生可以通过网络选择自己感兴趣的课程,教师也可以通过网络知道自己代理的课程和选择自己课程的学生的详细信息。而且现在学校的学生数量成爆炸式的增长,通过网络选课也可以解决学校和教师的工作量,学校只要在网上下发每个老师的管理的课程,而学生只要去选课就行,这样就教师可以把更多的时间花在备课上,学生可以把更多的时间花在学习上。
1.2课题研究目的和意义
网络选课系统让学生什么能更自由、方便、快速的选课。但是,现在的选课形式存在问题。比如,有的课程学分高选这个,有的课程容易学选这个,大家都选就跟着一起选,有的人甚至连自己缺多少学分都不清楚,这样选课完全违背了选课系统开发出来的意愿。
本课题是为了描述网络选课系统这一平台的各个流程和性能。也是为了达成开发人员与用户的共识。而且通过本课题能使用户知道登录网络选课系统后该完成的任务。本系统是为了现在的大学生而做的一个网络选课平台。学生可以在本平台选择适合自己的课程,教师可以了解自己代理的课程,同时也可以为选择自己课程的学生打分。而且本系统还配备管理员权限,可以对学生,教师,课程三者进行管理。
当然,网络选课也是现在兴起的一个热门话题,虽然现在只是推行到了大学,但在将来也势必会推广到高中,初中,直至整个教育界,以后学校再也不是一股脑的教一样的东西了,而是每个学生都会选择自己感兴趣的,这样的学校教出来的学生就不在是流水线生产的了。
2.系统分析
2.1网络选课系统的定义
在现在,Internet已经全球化,大家无时无刻离不开网络。而且使用人数在随着科技的发展而增加。接入Internet的方法很简单,只要在一个地方连接,就可以连接上Internet。在Internet上可以查到所有已知的事情。而WWW系统是一个有着分布式超媒体的大型的信息数据库,在它的推动下Internet得到了极大的发展,现在已经成为了Internet中信息服务方式的最主要的部分。WWW,也叫做web,在Internet中是我们经常用到的一个功能。当人们登上Internet后,会花大部分时间和不同种类的web页面“交流”。在web方式下,我们可以做到查询、搜索和浏览不同的信息,也可以把自己的信息发布出去,还可以和他人进行当面交流或者留言交流等。
web技术能在全球普及的一个重要原因就是它和数据库管理系统的融合程度高,因此成为了共享和处理信息的一个工具。在现在数据库在信息管理方面很强大,而web也有数据共享的方法。这两者结合在一起就可以使用户能更简单的在Web上查找数据库里的内容。
网络选课系统是无纸化办公的实现,是和传统选课方式相比,更节约资源的一种选课方式。而且也避免了传统选课完后统计时容易出现的人为的错误,网络选课系统是现在网络发达后出现的必然趋势。
2.2可行性分析
在60年代数据库发展了起来。到现在,数据库技术越来越成熟。并且在新的Internet上Web数据库产生了很大的变化。在数据这块就出现了如网上书城、网上购物、网上商务办公、网上教育系统等,这就使web数据库技术需要更完善的技术。而且现在的高校都有校园网,所以Internet技术能更好更快的在学校得到发展。比如现在学校大部分都有的学生信息管理系统,学生选课系统和招生系统等等。
2.3需求分析
2.3.1各模块功能
根据系统功能的不同,可以将系统分为以下几种:
身份验证:用户要通过登录才能进入网络选课系统,登录信息会经过数据库验证,如果验证成功,则跳转到相应界面,如果验证失败,则需重新输入。本系统只有三种身份:管理员,教师,学生。
选课:学生可以通过网络选课系统来选课,并且查看所选课程。
信息管理:
信息查看:信息查看包括课程查看,学生、教师信息查看,登录、选课、退课时间查询。课程查看包括未选课程查看,已选课程查看和课程详细信息查看。学生、教师信息查看包括学生的详细信息查看和教师的详细信息查看。登录、选课、退课时间查询包括用户登录时间查询、学生选课时间查询和学生退课时间查询。
信息查询:信息查询包括姓名查询,学号查询,课程名称查询等。姓名查询包括学生姓名查询和教师姓名查询,主要是通过输入的姓名在数据库里检索,查询到就会显示在表里。学号查询包括学生学号查询、教师学号查询和和课程编号查询三种,通过数据库的检索来查询数据存不存在。课程名称查询,是通过在数据库里检索课程名称来显示数据。
信息修改:信息修改包括课程的修改,学生信息的修改,教师信息的修改,密码的修改。
2.3.2各模块遇到的问题
用户登录:当用户登录时不输入密码也可以登录,或者输入的密码正确却不能登录,后经发现,是在代码编写阶段没有考虑全面,而输入密码正确却不能登录是因为读取数据库时出问题,后经解决。
学生选课:在学生选课时遇到了只能选一节课的问题,后经发现,是在代码方面书写错误,经过修改,解决了这个问题。
学生退选:退选后页面不刷新,在找问题后发现没有在退选后再绑定数据。
教师为学生分配分数:分配后分数出现在所有学生分数上面,不能指定唯一学生,后经发现,是因为在写sql语句时没有加条件语句。
管理员的添加:添加后数据库里没有数据,后经仔细检查,发现是添加事件没有触发,原因是添加事件名称和按钮里的事件名称不同。
管理员的删除:删除用户后发现用户还能登录,经检查是因为删除的不是用户表里的数据,改成用户表后该用户就不可以登录了。
管理员的修改:修改后数据没有变,原因是没有获得正确的用户唯一标识符(RowGuid),问题解决后就可以正常修改了。
2.4系统开发环境和技术介绍
网络选课系统通过用Microsoft Visual Studio 2010来编写程序,SQL Server 2008来完成数据库的设计。并且使用了FineUI插件来丰富内容。
(1)Microsoft Visual Studio 2010
作为微软推出的最流行的应用程序开发环境Vistual Studio。其2010版在2010年4月12日上市了。并且它的界面重新设计了,看起来更加简洁。而且,可以在Window7上开发。
2010可以很简单的完成一个页面的实现,只要简单的拖拽就行。但不是光拖拽就行,还需要自己写相应的代码。而且2010支持C#,VB,C++等语言。
在Visual Studio的所有版本中都可以使用模版。并且2010使用了预处理模版,这样生成文本文件将变得很容易。因为系统集成度更高,代码集成的支持律也相应提高,也就是说源代码生成后不管源模型怎么变,源代码总会第一时间更新。
(2)SQL Server 2008
Microsoft的数据平台上发布的SQL Server 2008 ,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。
SQL Server 2008 允许使用 Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据
(3)FineUI
FineUI是一组基于ExtJS的专业ASP.NET控件库,拥有原生的AJAX支持和华丽的UI效果。
FineUI的使命是创建没有JavaScript,没有CSS,没有UpdatePanel,没有ViewState,没有WebServices的网站应用程序。
FineUI则是将ExtJS和ASP.NET进行深度整合的产物。大量基于JavaScript和CSS却不需要程序员编写JavaScript和CSS;原生的AJAX支持却不需要依赖ASP.NET AJAX的UpdatePanel;快速的ASP.NET开发模式却不需要ViewState的参与。最终FineUI剩下的只是简单的ASP.NET控件。学习FineUI只需要你有ASP.NET的开发基础,不需要事先学习ExtJS,因为FineUI是一个深度封装的控件库。
3.系统设计
3.1网络选课系统的流程图
图3.1 网络选课系统流程图
网络选课系统的用户有管理员,教师和学生三种,这三种用户都需要登录后才能完成相关操作,并且都可以修改密码和完善自己的资料。
管理员:可以对课程,学生,教师进行增删改查,并且当管理员对学生和教师的信息修改后密码会重置为学号。而且管理员还可以查看所有登录过的用户的时间和所有学生的选课时间和退课时间。
教师:可以查看自己代理的课程,也包括选择课程的学生名单,并且可以为每个学生的成绩打分。
学生:可以查看所有可选课程,然后可以选课、退课。
3.2数据库设计
3.2.1数据字典
表名:XuanKe_GongG 主要保存登录用户的信息 如表3.2
表3.2 用户表
字段中文名 字段名 字段类型 字段长度
序列号 ID int 50
摘 要:现在的网络技术越来越发达,大学生选课也趋向于网络化,所以我就网络选课这个课题设计了网络选课系统。本系统基于Asp.Net的三层架构和Sql Server 2008数据库来开发。本系统分为4个模块:管理员模块、教师模块、学生模块和公共模块。其中管理员模块包括学生管理、教师管理和课程管理3个子模块。教师模块实现查看本教师所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。学生模块实现学生选课,查看、修改自己的选课信息。公共模块实现用户的身份验证、密码修改、退出系统等功能。而且我还就管理员模块增加了所有用户登录时间查询和学生选课时间查询,这样能就对学生选课有更详细的管理。
在我国大部分高校实行学分制,学分制是让学生有自主权,可以自主选课。而且,学生选课会遇到很多问题,花费的时间和精力也会很多。但是只要用了网络选课系统,就可以方便的对选课数据进行查看和统计,也可以避免大部分人为产生的错误。
关键字:网络选课系ASP.NetSqlServer三层架构
目 录
1. 绪论 1
1.1课题研究背景 1
1.2课题研究目的和意义 1
2. 系统分析 3
2.1网络选课系统的定义 3
2.2可行性分析 4
2.3需求分析 4
2.3.1各模块功能 4
2.3.2各模块遇到的问题 4
2.4系统开发环境和技术介绍 5
3.系统设计 7
3.1网络选课系统的流程图 7
3.2数据库设计 8
3.2.1数据字典 8
3.2.2各表之间的关系 12
4.系统实现 13
4.1数据库的连接 13
4.2系统的功能实现 15
4.3关键代码 19
4.3.1学生选课 19
5. 系统测试与维护 22
5.1系统测试 22
5.1.1测试 如表5.1 22
5.1.2测试结果 如表5.2 23
5.2系统维护 24
总结 25
参考文献 26
致谢 27
1.绪论
1.1课题研究背景
随着网络的发展,网络选课系统成为教务管理系统中一个必不可少的组成部分,可以实现让学生在网络上进行课程的选择,教师也可以通过网络来提交学生的成绩和查看课程选修情况等。是高校实现无纸化办公的一个必备系统。因此网络选课系统是为了方便学生和教师而开发出来的,由于现在的学校都是固定的模式,学生只要按照学校规定的课程去上课就行了。这已经不适用现在的大学了,由于现在的大学自由度很高,这样上课方式却限制了学生的发展,毕竟每个学生都有自己擅长和不擅长的,不能把所有人都一概而论。就像古话说的,要因材施教,但大学老师资源有限,不可能为了每个学生制定详细的学习计划,所以现在把选择的权利交给了学生。因为现在网络技术的发达,大家都可以通过网络联系在一起,所以学生可以通过网络选择自己感兴趣的课程,教师也可以通过网络知道自己代理的课程和选择自己课程的学生的详细信息。而且现在学校的学生数量成爆炸式的增长,通过网络选课也可以解决学校和教师的工作量,学校只要在网上下发每个老师的管理的课程,而学生只要去选课就行,这样就教师可以把更多的时间花在备课上,学生可以把更多的时间花在学习上。
1.2课题研究目的和意义
网络选课系统让学生什么能更自由、方便、快速的选课。但是,现在的选课形式存在问题。比如,有的课程学分高选这个,有的课程容易学选这个,大家都选就跟着一起选,有的人甚至连自己缺多少学分都不清楚,这样选课完全违背了选课系统开发出来的意愿。
本课题是为了描述网络选课系统这一平台的各个流程和性能。也是为了达成开发人员与用户的共识。而且通过本课题能使用户知道登录网络选课系统后该完成的任务。本系统是为了现在的大学生而做的一个网络选课平台。学生可以在本平台选择适合自己的课程,教师可以了解自己代理的课程,同时也可以为选择自己课程的学生打分。而且本系统还配备管理员权限,可以对学生,教师,课程三者进行管理。
当然,网络选课也是现在兴起的一个热门话题,虽然现在只是推行到了大学,但在将来也势必会推广到高中,初中,直至整个教育界,以后学校再也不是一股脑的教一样的东西了,而是每个学生都会选择自己感兴趣的,这样的学校教出来的学生就不在是流水线生产的了。
2.系统分析
2.1网络选课系统的定义
在现在,Internet已经全球化,大家无时无刻离不开网络。而且使用人数在随着科技的发展而增加。接入Internet的方法很简单,只要在一个地方连接,就可以连接上Internet。在Internet上可以查到所有已知的事情。而WWW系统是一个有着分布式超媒体的大型的信息数据库,在它的推动下Internet得到了极大的发展,现在已经成为了Internet中信息服务方式的最主要的部分。WWW,也叫做web,在Internet中是我们经常用到的一个功能。当人们登上Internet后,会花大部分时间和不同种类的web页面“交流”。在web方式下,我们可以做到查询、搜索和浏览不同的信息,也可以把自己的信息发布出去,还可以和他人进行当面交流或者留言交流等。
web技术能在全球普及的一个重要原因就是它和数据库管理系统的融合程度高,因此成为了共享和处理信息的一个工具。在现在数据库在信息管理方面很强大,而web也有数据共享的方法。这两者结合在一起就可以使用户能更简单的在Web上查找数据库里的内容。
网络选课系统是无纸化办公的实现,是和传统选课方式相比,更节约资源的一种选课方式。而且也避免了传统选课完后统计时容易出现的人为的错误,网络选课系统是现在网络发达后出现的必然趋势。
2.2可行性分析
在60年代数据库发展了起来。到现在,数据库技术越来越成熟。并且在新的Internet上Web数据库产生了很大的变化。在数据这块就出现了如网上书城、网上购物、网上商务办公、网上教育系统等,这就使web数据库技术需要更完善的技术。而且现在的高校都有校园网,所以Internet技术能更好更快的在学校得到发展。比如现在学校大部分都有的学生信息管理系统,学生选课系统和招生系统等等。
2.3需求分析
2.3.1各模块功能
根据系统功能的不同,可以将系统分为以下几种:
身份验证:用户要通过登录才能进入网络选课系统,登录信息会经过数据库验证,如果验证成功,则跳转到相应界面,如果验证失败,则需重新输入。本系统只有三种身份:管理员,教师,学生。
选课:学生可以通过网络选课系统来选课,并且查看所选课程。
信息管理:
信息查看:信息查看包括课程查看,学生、教师信息查看,登录、选课、退课时间查询。课程查看包括未选课程查看,已选课程查看和课程详细信息查看。学生、教师信息查看包括学生的详细信息查看和教师的详细信息查看。登录、选课、退课时间查询包括用户登录时间查询、学生选课时间查询和学生退课时间查询。
信息查询:信息查询包括姓名查询,学号查询,课程名称查询等。姓名查询包括学生姓名查询和教师姓名查询,主要是通过输入的姓名在数据库里检索,查询到就会显示在表里。学号查询包括学生学号查询、教师学号查询和和课程编号查询三种,通过数据库的检索来查询数据存不存在。课程名称查询,是通过在数据库里检索课程名称来显示数据。
信息修改:信息修改包括课程的修改,学生信息的修改,教师信息的修改,密码的修改。
2.3.2各模块遇到的问题
用户登录:当用户登录时不输入密码也可以登录,或者输入的密码正确却不能登录,后经发现,是在代码编写阶段没有考虑全面,而输入密码正确却不能登录是因为读取数据库时出问题,后经解决。
学生选课:在学生选课时遇到了只能选一节课的问题,后经发现,是在代码方面书写错误,经过修改,解决了这个问题。
学生退选:退选后页面不刷新,在找问题后发现没有在退选后再绑定数据。
教师为学生分配分数:分配后分数出现在所有学生分数上面,不能指定唯一学生,后经发现,是因为在写sql语句时没有加条件语句。
管理员的添加:添加后数据库里没有数据,后经仔细检查,发现是添加事件没有触发,原因是添加事件名称和按钮里的事件名称不同。
管理员的删除:删除用户后发现用户还能登录,经检查是因为删除的不是用户表里的数据,改成用户表后该用户就不可以登录了。
管理员的修改:修改后数据没有变,原因是没有获得正确的用户唯一标识符(RowGuid),问题解决后就可以正常修改了。
2.4系统开发环境和技术介绍
网络选课系统通过用Microsoft Visual Studio 2010来编写程序,SQL Server 2008来完成数据库的设计。并且使用了FineUI插件来丰富内容。
(1)Microsoft Visual Studio 2010
作为微软推出的最流行的应用程序开发环境Vistual Studio。其2010版在2010年4月12日上市了。并且它的界面重新设计了,看起来更加简洁。而且,可以在Window7上开发。
2010可以很简单的完成一个页面的实现,只要简单的拖拽就行。但不是光拖拽就行,还需要自己写相应的代码。而且2010支持C#,VB,C++等语言。
在Visual Studio的所有版本中都可以使用模版。并且2010使用了预处理模版,这样生成文本文件将变得很容易。因为系统集成度更高,代码集成的支持律也相应提高,也就是说源代码生成后不管源模型怎么变,源代码总会第一时间更新。
(2)SQL Server 2008
Microsoft的数据平台上发布的SQL Server 2008 ,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。
SQL Server 2008 允许使用 Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据
(3)FineUI
FineUI是一组基于ExtJS的专业ASP.NET控件库,拥有原生的AJAX支持和华丽的UI效果。
FineUI的使命是创建没有JavaScript,没有CSS,没有UpdatePanel,没有ViewState,没有WebServices的网站应用程序。
FineUI则是将ExtJS和ASP.NET进行深度整合的产物。大量基于JavaScript和CSS却不需要程序员编写JavaScript和CSS;原生的AJAX支持却不需要依赖ASP.NET AJAX的UpdatePanel;快速的ASP.NET开发模式却不需要ViewState的参与。最终FineUI剩下的只是简单的ASP.NET控件。学习FineUI只需要你有ASP.NET的开发基础,不需要事先学习ExtJS,因为FineUI是一个深度封装的控件库。
3.系统设计
3.1网络选课系统的流程图
图3.1 网络选课系统流程图
网络选课系统的用户有管理员,教师和学生三种,这三种用户都需要登录后才能完成相关操作,并且都可以修改密码和完善自己的资料。
管理员:可以对课程,学生,教师进行增删改查,并且当管理员对学生和教师的信息修改后密码会重置为学号。而且管理员还可以查看所有登录过的用户的时间和所有学生的选课时间和退课时间。
教师:可以查看自己代理的课程,也包括选择课程的学生名单,并且可以为每个学生的成绩打分。
学生:可以查看所有可选课程,然后可以选课、退课。
3.2数据库设计
3.2.1数据字典
表名:XuanKe_GongG 主要保存登录用户的信息 如表3.2
表3.2 用户表
字段中文名 字段名 字段类型 字段长度
序列号 ID int 50
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/qrs/206.html