在线课件管理系统设计与实现.docx
《在线课件管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《在线课件管理系统设计与实现.docx(59页珍藏版)》请在冰豆网上搜索。
在线课件管理系统设计与实现
在线课件管理系统的设计与实现
【摘要】在资讯和信息越来越重要的时代,精彩的网络在悄悄改变着人们的工作、生活和学习的理念。
互联网成为人们快速获取、发布和传递信息的重要渠道。
网络上发布信息主要是通过网站来实现的,获取信息也是要在网络中按照一定的检索方式将所需要的信息从网站上下载下来。
本设计所开发的在线课件管理系统,能为同学们提供一个更加方便分享课件的平台,达到让同学们能随时掌握课件的更新和分享情况,从而使得同学们能更快掌握课件信息。
这次的毕业设计使用了微软ASP.NET的来实现网站,网站后台的编程语言是C#.NET来实现功能的,同时也使用到微软的SQL2008数据库实现数据的保存功能。
希望这样能提高网站的工作的效率。
【关键词】在线;互联网;课件管理系统
DesignandRealizationofOn-lineCoursewareManagementSystem
【Abstract】Inmodernsociety,informationbecomemoreandmoreimportant.StudentsandteachersareallsharingthecoursewarethroughInternet.ThispaperuseASP.NET,C#.NETandSQL2008tomakeaOn-lineCoursewareManagementSystem.Itcanreceivetheteacher'smaterialswhichcanbedownloadedbythestudents.
【Keywords】On-line,Internet,CoursewareManagementSystem
第一章引言
本世纪是信息时代,高等教育更是信息时代的担当者。
校园的网络信息化建设已基本实现从服务器、网络等硬件环境,辐射教学、管理等应用软件系统和网站。
高等学校网络化的建设是十分必要的一项工作,目的是通过建设校园网络,把网络资源切实有效的应用到教育教学中,提高教学效率和数学效果。
学校网络的使用,改变了教师的教学方式,也改变了学生的学习方式。
充分利用网络资源条件,使其更好地为教学服务。
同时随着社会经济和Web技术的发展,人们不再满足于仅能浏览信息的静态网页,更多的时候需要能与同时上网的互联网用户进行交流和发表自己的意见见解,这样,能提供后台数据库的管理和控制等服务的动态网站有了诞生的必要。
近年来,随着互联网在中国的迅速发展,这一利用网络信息进行交流资料和信息的方式得到迅速发展。
在校园中通过网络的信息技术,可以使教育教学资源自由共享,优化教育教学方式,同时还可以培养和提高学生获取各种信息的素养,这样可以信息化网络校园环境,从而达到实现教育信息化,这是信息时代学习方式改变的新理念。
在线课件管理系统在一定的程度上可以实现老师学习资料与同学的同步,不论是学生是否在校园,在任何时间只要可以上网就可以的到老师的第一手学习资料。
网站通过不同成员的登录,也同样可以很好的规范课件管理和存储,使得课件的管理有条不紊,同学们也能准确地找到所需,还能降低教师的工作量,提高同学们的学习效率,优化了学习环境。
1.1在线课件管理系统开发简介
ASP.NET是一种动态网站开发的应用程序,是微软公司推出的一种全新的基于B/S模型的技术,并有集成VisualStudio2010的支持。
ASP.net是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。
ASP.NET同时也是language-independent语言独立化的,所以,使用者可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。
将来这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET
的平台下。
应为这次的网站后台程序是用C#.NET来开发的,所以以下对C#.NET进行简介。
C#.NET使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
这种被称为"ZeroLocalAdministration"的哲学观念使C#.NET的基于应用的开发更加具体,和快捷。
一个C#.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。
多处理器环境的可靠性C#.NET已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的C#.NET应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。
自定义性和可扩展性C#.NET设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。
这与原来的包含关系不同,C#.NET可以加入自己定义的如何组件。
网站程序的开发从来没有这么简单过。
安全性基于Windows认证技术和每应用程序配置,你可以确性你的原程序时绝对安全的。
C#.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加C#.NET功能,随时增强ASP应用程序的功能。
C#.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。
将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何C#.NET应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
C#.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
当创建C#.NET应用程序时,开发人员可以使用Web窗体或XMLWebservices,或以他们认为合适的任何方式进行组合。
每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义。
除此之外还有许多动态网站的开发技术,如JavaServlets技术,利用该技术可以很容易地用Java语言编写交互式的服务器端代码。
一个JavaServlets就是一个基于Java技术的运行在服务器端的程序(与Applet不同,后者运行在浏览器端)。
开发人员编写这样的JavaServlets,以接收来自Web浏览器的HTTP请求,动态地生成响应(可能需要查询数据库来完成这种请求),然后发送包含HTML或XML文档的响应到浏览器。
这种技术对于普通的页面设计者来说要轻易地掌握是很困难的。
采用这种方法,整个网页必须都在JavaServlets中制作。
如果开发人员或者Web管理人员想要调整页面显示,就不得不编辑并重新编译该JavaServlets。
太阳微系统公司(SunMicrosystemsInc.)在Web服务器、应用服务器、交易系统以及开发工具供应商间广泛支持与合作下,整合并平衡了已经存在的对Java编程环境(例如JavaServlets和JavaBeans)进行支持的技术和工具后产生了一种新的、开发基于Web应用程序的方法——JavaServerPages技术(JSP)。
所以经过总结,ASP.NET的优点可以归结为以下几点:
(1)能够在任何Web或应用程序服务器上运行;
(2)分离了应用程序的逻辑和页面显示;
(3)能够进行快速的开发和测试;
(4)简化了开发基于Web的交互式应用程序的过程.
1.2本课题的研究意义
当今的社会是一个信息爆炸的社会。
互联网的出现加速了这种信息爆炸的当量。
导致信息泛滥成灾,严重地阻碍和影响着知识和信息的传播。
随着Internet的普及,互联网以一股巨大变革力量的面貌出现在商务关系领域。
其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
在现在这个时代中,网络的巨大优势显露无疑:
那就是超越信息,将信息转化为知识。
著名的经济学家、1972年诺贝尔经济学奖获得者赫伯特·西蒙早在20多年前就指出过:
在信息时代,最稀缺的资源不再是信息本身,而是对信息的处理能力。
传统的各种网络工具(搜索引擎、网上查询、数据挖掘)以及各种软件工具等,越来越难以满足深层次的需要。
如何让信息和知识通过互联网有序、广泛、深入地传播,将零散、隐形的知识快速转化为具有使用价值的显性知识。
这是当今社会最为关心的问题。
博客技术的出现为人们提供了一种全新可能。
网络开始真正凸现无穷的知识价值。
在现在的校园里,网络已经成为了不可替代的一种工具。
其带来的效率是不可忽视的。
在高校信息化网络建设信息技术的开发应用,以学习资源信息化的全面展开应用为主线,全面创建信息化校园,加强学校教育资源建设。
微观上讲,高校信息化网络建设包含了计算机化、网络化、智能化,反映的是信息能力的高度运用。
具有很强的实践性。
高校信息化网络建设与应用突出了信息化网络的应用主题,其最终目的是更好地开展并实现教育信息化、网络信息化。
为了适应信息网络形势,紧跟时代潮流,使自己能在新世纪中运用网络传播渠道建立学习的新环境,利用网络的方便性提高学习效率,让老师和同学方便交流,利用网站随时在线的特点,创建彼此分享学习资料的的桥梁。
这也是我创建该网站的初衷。
1.3主要研究工作
在线课件管理系统一般来说使用有三大对象对象:
老师、同学和系统的管理人员。
在线课件管理系统主要要达到以下要求:
管理员可以看到所有的老师和同学的信息,并可以添加删除老师和同学的信息,而且管理可以把一些出错了或者太旧的课件进行删除,并且也可以上传课件,同时还可以修改自己的登录密码;而对于老师角色的要求是:
可以上传课件,和下载课件,可以修改自己的登录密码;对于学生这个角色的要求是:
可以下载课件,可以修改自己的登录密码,可以查看老师的信息。
这个系统因为考虑到仅仅面对学校的同学开放,所以必须要登录后才可以浏览网页,对于普通的网络浏览者并不开放。
对于安全和维护的考虑,系统将有一个后台页面,仅对于管理员开放。
系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。
而对于后者则要求应用程序功能完备,易使用等特点。
第二章基础知识介绍
2.1ASP.NET概述
ASP.NET是一个统一的Web开发模型,它包括您使用尽可能少的代码生成企业级Web应用程序所必需的各种服务。
ASP.NET作为.NETFramework的一部分提供。
当您编写ASP.NET应用程序的代码时,可以访问.NETFramework中的类。
您可以使用与公共语言运行库(CLR)兼容的任何语言来编写应用程序的代码,这些语言包括MicrosoftVisualBasic、C#、JScript.NET和J#。
使用这些语言,可以开发利用公共语言运行库、类型安全、继承等方面的优点的ASP.NET应用程序。
ASP.NET页和控件框架是一种编程框架,它在Web服务器上运行,可以动态地生成和呈现ASP.NET网页。
可以从任何浏览器或客户端设备请求ASP.NET网页,ASP.NET会向请求浏览器呈现标记(例如HTML)。
通常,您可以对多个浏览器使用相同的页,因为ASP.NET会为发出请求的浏览器呈现适当的标记。
但是,您可以针对诸如MicrosoftInternetExplorer6的特定浏览器设计ASP.NET网页,并利用该浏览器的功能。
ASP.NET支持基于Web的设备(如移动电话、手持型计算机和个人数字助理(PDA))的移动控件。
ASP.NET网页是完全面向对象的。
在ASP.NET网页中,可以使用属性、方法和事件来处理HTML元素。
ASP.NET页框架为响应在服务器上运行的代码中的客户端事件提供统一的模型,从而使您不必考虑基于Web的应用程序中固有的客户端和服务器隔离的实现细节。
该框架还会在页处理生命周期中自动维护页及该页上控件的状态。
使用ASP.NET页和控件框架还可以将常用的UI功能封装成易于使用且可重用的控件。
控件只需编写一次,即可用于许多页并集成到ASP.NET网页中。
这些控件在呈现期间放入ASP.NET网页中。
ASP.NET页和控件框架还提供各种功能,以便可以通过主题和外观来控制网站的整体外观和感觉。
可以先定义主题和外观,然后在页面级或控件级应用这些主题和外观。
除了主题外,还可以定义母版页,以使应用程序中的页具有一致的布局。
一个母版页可以定义您希望应用程序中的所有页(或一组页)所具有的布局和标准行为。
然后可以创建包含要显示的页特定内容的各个内容页。
当用户请求内容页时,这些内容页与母版页合并,产生将母版页的布局与内容页中的内容组合在一起的输出。
在ASP.NET网页中,用户界面编程分为两个部分:
可视组件和逻辑。
如果您以前使用过类似于VisualBasic和VisualC++的工具,您将认同在页的可视部分和页后与之交互的代码之间存在这样一种划分。
可视元素由一个包含静态标记(例如HTML或ASP.NET服务器控件或两者)的文件组成。
ASP.NET网页用作要显示的静态文本和控件的容器。
ASP.NET网页的逻辑由代码组成,这些代码由您创建以与页进行交互。
代码可以驻留在页的script块中或者单独的类中。
如果代码在单独的类文件中,则该文件称为“代码隐藏”文件。
ASP.NET网页编译为动态链接库(.dll)文件。
用户第一次浏览到.aspx页时,ASP.NET自动生成表示该页的.NET类文件,然后编译此文件。
.dll文件在服务器上运行,并动态生成页的HTML输出。
2.1.1ASP.NET的主要功能与特点
利用ASP.NET技术,创建Web动态网站,这需要研发人员了解并能够灵活应用多种Web研发技术,例如,CSS样式表、客户端脚本语言、.NET研发语言、服务器控件研发技术,甚至是当前最火的AJAX技术等等。
要实现一些要求的功能,使用这种研发技术不是那么困难。
现在就简单介绍一下ASP.NET主要功能和一些特点,然后再对创建Web自定义服务器控件的基础知识进行一定的介绍。
2.1.1.1Web服务器控件简介
在ASP.NET2.0中,Web服务器控件是指在服务器上执行程式逻辑的组件。
这个组件可能生成一定的用户界面,也可能不包括用户界面。
每个服务器控件都包含一些成员对象,以便研发人员调用。
例如:
属性、事件、方法等。
通常情况下,服务器控件都包含在ASP.NET页面中。
当运行页面时,.NET执行引擎将根据控件成员对象和程式逻辑定义完成一定的功能。
例如,在客户端呈现用户界面。
这时,用户可和控件发生交互行为,当页面被用户提交时,控件可在服务器端引发事件,并由服务器端根据相关事件处理程式来进行事件处理。
服务器控件是WebForm编程模型的重要元素,他们构成了一个新的、基于控件的表单程式的基础。
通过这种方式能够简化Web应用程式的研发,提高应用程式的研发效率。
服务器控件的广泛应用,简化了应用程式的研发,提高了工作效率。
那么,何时应创建并使用自定义服务器控件呢?
下面列举了在三种具体适用情况:
(1)某个现有服务器控件基本符合应用需要,但是,缺少某些特别的功能,这
时能够通过从现有控件中派生并重写其属性、方法或事件来自定义服务器控件。
(2)需要使用的服务器控件结合了两个或多个现有控件的功能,例如,封装一个按钮和一个文本框的复合控件。
此时能够通过创建服务器控件达到这一目的。
(3)现有服务器控件(或其组合)均不符合应用的需要。
对于这种情况,能够通过从基类派生的方式来创建自定义服务器控件。
ASP.NET2.0提供了多种服务器控件。
根据服务器控件定义方式,可分为以下3种类型:
HTML服务器控件、ASP.NET标准服务器控件和自定义服务器控件。
2.1.1.2HTML服务器控件
HTML服务器控件派生自名字空间System.Web.UI.HtmlControls。
他们由普通HTML控件(指HTML语言已定义的控件,例如,Button、Input等)转换而来,其呈现的输出,基本上和普通HTML控件一致。
默认情况下,服务器端很难控制Web页面上的普通HTML控件,但是,通过将普通HTML控件转换为HTML服务器控件的方法,研发人员则能够轻而易举对其进行编程控制。
将普通HTML控件转换为HTML服务器控件方法比较简单。
一般情况下,通过两个步骤完成转换:
(1)在普通HTML控件特性中添加Runat="Server"属性;
(2)配置ID属性。
通过转换,普通HTML控件的相关属性、事件、方法等将全部映射到HTML服务器控件中,由此,通过编程即可在页面处理过程中引用并控制该HTML服务器控件。
HTML服务器控件具备以下几个重要特点:
(1)可在服务器上使用面向对象技术对其进行编程控制,这为编程研发提供了便利。
(2)自动维护视图状态。
在页面窗体到服务器端往返期间,用户在HTML服务器控件中输入的值将在页面回传中自动维护。
(3)和验证控件进行交互,便于验证用户是否在控件输入了适当的信息。
(4)允许在HTML服务器控件中自定义属性。
研发人员能够将任何需要的属性添加到HTML服务器控件的属性集中,页框架将读取并呈现他们而不更改其他任何功能。
2.1.1.3ASP.NET标准服务器控件
ASP.NET标准服务器控件均在名字空间System.Web.UI.WebControls中定义。
所谓"标准"是指这类服务器控件内置于ASP.NET2.0框架中,是预先定义的。
这类控件并不一对一映射到HTML服务器控件,他们比HTML服务器控件具备更加丰富的功能,并且更加抽象。
按照控件所提供的功能,ASP.NET标准服务器控件可分为以下6种类型:
(1)标准控件:
主要是指传统的Web窗体控件,例如TextBox、Button、Panel等控件。
他们有一组标准化的属性、事件和方法,因此能够使研发工作变得简单易行。
(2)数据控件:
该类控件可细分为两种类型:
数据源控件和数据绑定控件。
数据源控件主要实现数据源连接SQL语句/存储过程执行,返回数据集合等功能。
具体包括SqlDataSource、AccessDataSource、XmlDataSource、SiteMapDataSource、ObjectDataSource等。
数据绑定控件包括Repeater、DataList、GridView、DetailsView、FormView等。
这类控件主要实现数据显示、提供编辑、删除等相关用户界面等。
通常情况下,首先,需要使用数据源控件连接数据库,并返回数据集合,然后,利用数据绑定控件实现数据显示、更新、删除等功能。
由于VisualStudio2005设计时的强大支持下,研发人员能够快速实现以上功能,甚至无需编写一行代码。
(3)验证控件:
他们是一组特别的控件,控件中包含验证逻辑以测试用户输入。
具体包括:
RequiredFieldValidator、RangeValiedator、RegularExpressionValidator、CompareValidator等等。
研发人员能够将验证控件附加到输入控件,测试用户对该输入控件输入的内容。
验证控件可用于检查输入字段,对照字符的特定值或模式进行测试,其目的是验证某个值是否在限定范围之内或其他逻辑。
(4)站点导航控件:
该类控件可和站点导航数据结合,实现站点导航功能。
具体包括:
Menu、SiteMapPath、TreeView。
对于大型站点,站点导航控件都有着广泛应用前景。
(5)WebParts控件:
Web部件是一项很了不起的功能,利用他能够创建具备高度个性化特征的Web应用程式。
实现Web部件功能需要WebParts控件支持,ASP.NET2.0提供了以下相关控件,例如WebPartManager、WebPartZone、EditorZone、CatalogZone、PageCatalogPart、AppearanceEditorPart等等。
(6)登录控件:
这类控件可快速实现用户登录及相关功能,例如,显示登录状态、密码恢复、创建新用户等。
具体包括:
LoginView、Login、CreateUserWizard、LoginStatus等等。
ASP.NET标准服务器控件由于是官方提供,因此,从系统内部就提供了对他们的强大支持。
对于研发人员而言,这些控件是构建Web应用程式的主力军。
2.2C#.NET概述
C#是一种语言,.NET是一种平台。
C#(读做"Csharp",中文译音暂时没有.专业人士一般读"Csharp",现在很多非专业一般读"C井"。
C#是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言。
并定于在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员AndersHejlsberg的最新成果。
C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。
它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。
C#语法表现力强,只有不到90个关键字,而且简单易学。
C#的大括号语法使任何熟悉C、C++或Java的人都可以立即上手。
了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用C#高效地工作。
语法简化了C++的诸多复杂性,同时提供了很多强大的功能,例如可为空的值类型、枚举、委托、C#源文件可以定义任意数量的类、结构、接口和事件。
Microsoft.NET是MicrosoftXMLWebservices平台。
XMLWebservices允许应用程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。
Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起之所需。
WebServices是.NET的核心技术。
Webservices是一个开放的标准,和HTTP、XML、SOAP一样。
他们是一个工业标准而非微软标准,WS-I是为了促进WebServices互通性的联盟组织,最初是由IBM和微软所发起,其它的成员包括BEASystem、