《ASP.NET软件开发实用教程 教学课件 ppt 作者 华驰 任务九 任务九》由会员分享,可在线阅读,更多相关《ASP.NET软件开发实用教程 教学课件 ppt 作者 华驰 任务九 任务九(23页珍藏版)》请在金锄头文库上搜索。
1、ASP.NET软件开发案例教程,任务九 网络在线考试系统功能实现,任务描述,本任务讲述ASP.NET内置对象、数据源绑定控件及第三方控件相关知识并完成网络课程在线考试系统中主要页面的功能实现,任务所完成的主要功能包括:网络在线考试系统访问人数统计、登陆页面验证码、管理员管理主要功能、考生考试主要功能。 通过对Page、Response、Request、Server、Application、Session和Cookie等ASP.NET的主要内置对象的学习,结合数据源绑定控件GridView、GridView、DetailsView、DataList、Repeater的学习,在本任务中主要由项目组
2、中软件设计人员完成网络在线考试系统访问人数统计、登陆页面验证码、考生考试页面、管理员管理等网络在线考试系统各主要功能。,任务分析,掌握ASP.NET的主要内置对象及数据源控件的使用方法之后,通过网络在线考试系统访问人数统计、登陆页面验证码、考生考试页面主要功能、管理员管理主要功能的实现,掌握主要内置对象及数据源控件在软件开发中的应用。 在完成考生考试主页面的设计后,在管理员管理主页面设计中通过使用TreeView控件为管理员管理主页面制作树形目录,使用Menu空间为管理员管理主页面制作动态菜单,使用SiteMapPath控件为在线考试系统制作站点导航并使用ASP.NET基本控件完成网络在线考试
3、系统的母版制作。,任务分析,通过本任务的实施,掌握HTML语言、CSS、页面定位与布局、XML语言的基本用法及TreeView控件的用法,SiteMapPath控件的用法、HTML控件、标准服务器控件以及使用各种控件来完成母版页的设计。 本任务中将使用ASP.NET内置对象与控件来实现网络在线考试系统的基本功能,通过本任务掌握ASP.NET内置对象的使用方法以及控件与数据源之间的绑定方法。,任务准备,1. ASP.NET内置对象概述,在ASP.NET中包含一系列类,在页面中可以直接使用,我们称之为内置对象。ASP.NET的内置对象主要包括Page、Response、Request、Server
4、、Application、Session和Cookie等。其中Page对象用来控制页面的实现过程,也是各种服务器控件的承载容器;Response对象是ASP.NET的重要对象,主要用于服务器端向客户端输出数据,实现页面跳转等功能,还可以用来传递各个页面之间的参数。而Request对象它可以用于服务器端和客户端交换数据,表示用客户端向服务器端发送的HTTP请求。Request对象用于服务器端从客户端获得数据;它和Response对象共同实现了服务器和客户端的交互,以及数据的交互等功能。,任务准备,Server对象提供了访问服务器对象的方法和属性,可以获取服务器信息,如应用程序的物理路径等。其中A
5、pplication、Session和Cookie都能够用来存储应用程序的数据,但它们之间又有所不同。其中Application对象被整个应用程序所共享,即多个用户共享同一个Application对象,经常用来存储整个应用程序相关的数据;Session对象被每一个用户所独享,且每一个用户都具有唯一的Session标识(Session对象的ID),经常用来存储用户相关数据;Cookie对象可于保存客户端浏览器请求的服务器页面,也可以用它存放非敏感性的用户信息,信息的保存时间可以根据用户需要进行设置,但Cookie和其他对象的最大不同是Cookie将信息保存在客户端,而Session和Applic
6、ation是保存在服务器端。也就是说,无论何时用户连接到服务器,Web站点都可以访问Cookie信息。这样,既方便用户的使用,也方便了网站对用户的管理,三者具体的区别及使用将在后续任务中详细说明。,任务准备,2. Page对象,在ASP.NET中,每个Web页面都是从Page类集成来的,也可以说ASP.NET页面实际是Page类的一个对象,它包含属性、事件和方法,控制页面的显示过程,也是各种服务器控件的承载容器。 Page对象常用属性有IsPostBack属性、IsValid属性、PreviousPage属性。 Page对象基本事件有Page_Load事件、Page_Unload事件、Page
7、_Init事件。,任务准备,3. Response对象,Response对象常用的属性和方法见下表。,任务准备,4. Request对象,Request对象常用的属性和方法见下表。,任务准备,5. Server对象,Server对象常用的属性和方法见下表。,任务准备,6. Application对象,Application对象可称为记录应用程序参数的对象。有时编程人员希望能存储一段信息,这段信息可能被整个网站的所有页面使用,这时就需要使用Application对象。每个Application对象变量都是Application集合中的对象之一,由Application对象统一管理。由于多个用户可
8、以共享一个Application对象,所以必须使用Lock和Unlock方法,以确保多个用户无法同时改变某一个属性。Application对象变量的生命周期中止于关闭IIS或使用Clear方法清除,Clear方法是Page对象的成员,可以直接调用。,任务准备,Application对象常用的属性和方法见下表。,任务准备,7. Session对象,Session对象可成为记录浏览器端的变量对象。Session对象是用来存储跨网页程序的变量或者对象,Session对象只针对单一网页使用者,也就是说各个连接的机器都有各自的Session对象,不同的客户端无法互相存取。Session对象中止于联机机器
9、离线时,也就是当网页使用者关掉浏览器或超过设定Session变量的有效时间时,Session对象就会消失。,任务准备,Session对象常用的属性和方法见下表。,任务准备,8. Cookies对象,Cookies对象可用于保存客户端浏览器请求的服务器页面,也可以用它存放非敏感性的用户信息,信息的保存时间可以根据用户需要进行设置;也就是说,无论何时用户连接到服务器,Web站点都可以访问Cookies的信息。这样,既方便用户的使用,也方便了网站对用户的管理。如果没有设置Cookies的有效日期,那么他们仅保存到关闭浏览器程序为止;如果将Cookie对象的Expires属性设置为MinValue,则
10、表示Cookies永远不会过期。Cookies存储的数据量受限制,大多数浏览器支持的最大容量为4096B,因此,一般不用Cookies对象来保存数据集或其他大量数据。并非所有的浏览器都支持Cookies,并且数据信息是以铭文的形式保存在客户端计算机中,因此最好不要保存敏感的、未加密的数据,否则会影响网络的安全性。存储Cookies变量,可以通过Response对象的Cookies集合,需要注意的是,Cookies对象不属Page类,所以用法和其他对象不同。,任务准备,语法如下: HttpCookie coki1=new HttpCookie(“abc”); /创建Cookie对象coki1 c
11、oki1.Value=”白菜”; /把coki1对象的 Value属性赋值白菜 Response.Cookies.Add(coki1); /把coki1对象加入Cookies集合中 要取回Cookie,可以使用Request对象的Cookies集合,并将指定的Cookies集合返回。 语法如下: Response.Write(Request.Cookies“abc”.Value);/获取Cookies对象的值并输出,任务准备,9. GridView控件,在动态网页开发中,以表格形式显示数据是一项很常见的任务。ASP.NET提供了许多工具用来显示表格形式的数据,GridView控件是其中最重要的
12、工具之一。通过使用GridView控件,并绑定相关的数据源控件,可以对各种数据源(如数据库、XML文件和公开数据的业务对象等)进行显示、编辑和删除等多种不同的操作。 GridView控件主要用作以表格的形式显示数据、他不仅可以利用数据源控件自动绑定数据显示、还可以直接使用数据源控件的数据操作命令对表中数据进行选择、排序、编辑等操作。 GridView控件可以绑定数据源、自动显示数据、也可以通过属性的设置有选择的显示数据源中的部分数据。,任务准备,10. DetailsView控件,DetailsView控件一次呈现一条表格形式的记录,并提供浏览多条记录以及插入、更新和删除记录的功能。Detai
13、lsView控件通常用于更新和插入新记录,并且通常在主/详细方案中使用,DetailsView控件通常用来显示许多记录列表的详细信息。比如显示考生的所有信息,那么就可以利用DetailsView控件显示每条记录的详细信息。另外,即使DetailsView控件控件的数据源公开了多条记录,该控件一次也仅显示一条数据记录。 DetailsView控件在很多方面与GridView控件非常类似,包括属性、事件、字段类型、模版列以及绑定方法等。,任务准备,11. DataList控件,一般而言,对于多行多列数据(或成为表格类数据)会选择前面讲过的GridView控件来展示。对于单行多列或多行单列的数据,则
14、建议使用DataList和Repeater控件。DataList控件提供了一些简单的模板。如果需要精确控制布局,可以考虑使用Repeater控件,该控件将在后面章节中讲解。 DataList控件的使用模板和样式对数据的显示样式进行定义,可用于创建模板化的列表数据,可以在一个模板化列表中,通过设置模版来控制呈现该列表的HTML。模板描述了如何显示别表中的某一项的HTML,比如可以显示诸如一行中有多列的内容,此时可用于任何重复结构中的数据。,任务准备,12. Repeater控件,Data Grid和DataList控件提供了各种特性,通过这些特性可以很容易地在一个Web页面上以列表形式显示数据。
15、但是,如果不想使用HTMLbiaoge形式,就会用到Repeater控件了,Repeater控件提供显示了需要数据的灵活性。 Repeater控件本身不具有固定的外观,通过页眉模版、数据项模版、交替数据项模版、分割模版以及页脚模版,可以灵活地控制数据的显示格式。 Repeater控件一般用于数据的显示,本身不具备编辑、分页、排序等功能(GridView控件具有这些功能),如果需要这些功能,则需要编码来实现。 Repeater控件不会自动生成任何用于布局的代码,使用时要通过模版来定义格式,从而灵活地控制记录的显示。,任务准备,13.第三方控件介绍,在VS开发工具中,有很多控件,这些控件是由微软公
16、司开发的常用控件。在使用过程中,又有人开发了适合自己的控件,并把他们放在网上供其他人免费使用,这些控件就是第三方控件。还有一些第三方控件是由其他软件供应商提供的,比如一些图像处理控件商如LeadTools、ReadRIS等提供了非常专业化的图像处理的控件,且是收费的。第三方控件封装合理、功能强大,使用第三方控件的优点是可以加快开发速度,提高开发效率;缺点是如果不是开源的,需要花钱,还有就是第三方控件很可能经常升级,需要注意更新的内容。简单地说,第三方控件就是非.NET系统中的控件。,归纳总结,本任务讲解了ASP.NET的主要内置对象的使用方法,介绍数据源控件的种类及使用方法。 综合运用前期所学,融合在一起实现了网络在线考试系统的网络在线考试系统访问人数统计、登陆页面验证码、管理员管理主要功能、考生考试主要功能,基本完成了网络在线考试系统的各种设计功能。 本任务还在任务拓展中,讲解了AJAX技术及其在网络在线考试系统中的简单运用;讲解了Webservice在ASP.NET开发中的基本应用。读者如果对这两项技术感兴趣,可