ASP.NET内置对象
WEB应用系统开发期末复习大纲模拟练习

WEB应用系统开发期末复习模拟练习一、选择题(10*2=20分)1.下列说法错误的是()A. 简单地说,CSS 就是一组用来控制网页元素外观的属性B. 在DetailsView控件中不能显示符合条件的多条记录C. 设置图片框控件的SizeMode 属性为StretchImage 时,图片可以按图片框的大小比例缩放显示D. 一个.ASPX页面中可以有多个FORM窗体标签。
2.以下()控件属于正则表达式验证控件A.RequiredFieldValidator 控件B.CompareValidator 控件C. RegularExpressionValidator控件D. CompareValidator控件提供了内置对象不包括()A. Request对象、B. Redirect对象C . Session对象D. Response对象4.以下()事件是DropDownList 控件的非用户自定义事件类型。
A. Click事件B. SelectedIndexChanged事件C. Delete事件D. Check事件5.下列说法错误的是()。
A. 一个系统中只能有一个站点地图文件文件B. 网站中的Global.asax 文件(如果有的话)必须放在应用程序的根目录下C. 三层架构的系统往往比两层架构的系统更安全D. 中不能使用框架技术6.下列说法错误的是()。
A. 可以在Web.config 文件中进行数据库连接配置B. 网站中的Global.asax 文件(如果有的话)必须放在应用程序的根目录下C. 利用DetailsView控件增添记录特别方便,因为不需要另外增加输入框D. 只是ADO的简单升级7. 下面关于与ASP说法错误的是()。
是编译型语言,而ASP解释型脚本语言采用多种面向对象编程语言代码与界面脚本分离,而ASP的代码与界面脚本混在一起D.用和ASP设计WEB应用系统的技术是一样的8. 三层结构体系架构不包括()。
ASP页面传值

页面之间传递值的几种方式页面传值是学习初期都会面临的一个问题,总的来说有页面传值、存储对象传值、ajax、类、model、表单等。
但是一般来说,常用的较简单有QueryString,Session,Cookies,Application,Server.Transfer。
一、QueryStringQueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。
如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。
但是对于传递数组或对象的话,就不能用这个方法了。
这种方法的优点:1.使用简单,对于安全性要求不高时传递数字或是文本值非常有效。
这种方法的缺点:1.缺乏安全性,由于它的值暴露在浏览器的URL地址中的。
2.不能传递对象。
使用方法:1.在源页面的代码中用需要传递的名称和值构造URL地址。
2.在源页面的代码用Response.Redirect(URL);重定向到上面的URL地址中。
3.在目的页面的代码使用Request.QueryString["name"];取出URL地址中传递的值。
例子:(1)a.aspxprivate void Button1_Click(object sender, System.EventArgs e){string s_url;s_url = "b.aspx?name=" + Label1.Text;Response.Redirect(s_url);}(2)b.aspxprivate void Page_Load(object sender, EventArgs e){Label2.Text = Request.QueryString["name"];}二、Session想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。
ASP.NET中session对象模式剖析

罔一台ma n 垦 o 管l机
负拽 均衙
故障转 移
务姑可分 别群堆管理且 共享
能
能 不能 不能 源自能 能 灾难恢复
不舱
不能
可 娃大限 度蛮现
袤l ej 8¨ o n的模式的 比较
工作的在线时问长 、 交互信息复杂的电子商务平 台上 , 由于大量 的用户会话状态需要较长时间的保 留 , 为保证可靠 的服务质量 , 宜使用 S L e e 模式 . Q Sr r v 在可靠性方面 S L evr Q S re 模式要远 优于
IP o n rc和 Sa S re 模 式 。 tt ev r e 3 不 同 模式 的 配 置 . sso es n的 使 用 模 式 配 置 是通 过 在 配 置 文 件 中 以 X i ML描 述
维普资讯
5 6
福 建 电
脑
20 0 6年第 6期
A PN T中 ssi 对 象模式剖析 S .E es n o
郭 勇. 袁 军
f 南民族师范学院计算机科 学系 贵 州都 匀 5 8 0 ) 黔 5 00
【 摘
要 】在基 于 A P E 中, 息量 太而复 杂的交互程序与服务使用 内置 的 sso 对 象保持程序 与服务的用 户会 话 : S. T 信 N es n i
币}, 1 夤 匠
不 依齄 ( 程外) 进
不黼眭
w 艇蚤讣 匝 幽性 群量节点 芄享
不能 不能
可特 离
可{ } 离
W B月务 E 日 器可群 阱 亭 WH 服务器与s L av 服 , 3 OS e r
.net期末考试 复习题(答)

一、选择题 1、下列标记不属于HTML 文档的基本结构的是:( D ) A <html> B <body> C <head> D <form> 2、请问下面程序段执行完毕,页面上显示内容是什么:( C ) Response.Write (“<a href=''>新浪</a>”) A 新浪 B <a href=''>新浪</a> C 新浪 D 该句有错,无法正常输出 3、Session 对象的默认有效期为多少分钟:( C ) A 10 B 15 C 20 D 应用程序从启动到结束 4、下面哪一个对象用于与数据源建立连接:( B ) A Command B Connection C DataReader D DataAdapter 5、Global.asax 文件中Session_Start 事件何时激发( B ) A 在每个请求开始时激发 B 尝试对使用进行身份验证时激发 C 启动会话时激发 D 在应用程序启动时激发 6、下面哪一个文件是全局配置文件( B ) A Global.asax B Web.config C Styles.css D AssemblyInfo.vb 7、需要写入与HTML 标记相同的文本时,应利用以下何种方法进行编码:(D ) A Response.Server.(HtmlEncod e (“<B>”)) B Response.Write(“Server.HtmlEncode (“<B>”)”) C Response.Write(Server.HtmlEncode (“<B>”)) D Server.Server(Write.HtmlEncode (“<B>”)) 8、下列说法正确的是(B ) A 页面上有动态的东西就是动态网页 B 静态网页内容固定,交互性能比动态网页差 C ASP 、JSP 和 技术都是把脚本语言嵌入到HTML 文档中 D 程序和ASP 程序一样都是解释执行 9、下面关于HTML 的描述错误的是( D ) A 超文本标记语言,一种为Internet 文档设计的标记语言 B 与操作系统平台的选择无关,只要有浏览器就可以运行HTML 文档 C 所有的标记都是成对出现 D 由浏览器解释HTML 标记符号并以它们指定的格式把相应的内容显示在屏幕上 10、下列关于 的验证控件描述错误的是( A ) A 在客户端和服务器端都能进行验证 B 其客户端验证和服务器端验证对所有浏览器都适用 C 如果页面调用了多个验证控件,当有其中的一个验证未通过时,整个页面不会被通过验证 D 一个服务器控件可同时被多个验证控件验证 11、在 应用程序中访问Access 数据库时,需要导入的命名空间为(B ) A System.Data.Oracle B System.Data. SqlClient C System.Data. ODBC D System.Data.OleDB 12、如果需要确保用户输入大于30的值,应该使用( C )验证控件 A RequiredFieldValidator B CompareValidator C RangeValidator D RegularExpressionValidator 13、下面哪一个不是网页文件的后缀名 ( D ) A htm B aspx C asp D txt 14、在Visual Studio 中新增Web 页面,应该右击解决方案资源管理器,然后点击(A )。
ASP.NE考试资料

1.在输出时,列表条目用数字标示需要用到的标签是(B)。
(A)ol(B)ul(C)dl(D)dd2.在Microsoft SQL Server中,数据库由数据库文件和(B)文件组成。
(A)模型(B)事务日志(C)信息(D)结构化查询3.下列事件中,不属于Global.asax文件中的 Web应用程序事件的是(D)。
(A)Application_Start(B)Application_End(C)Application_Error(D)Application_Stop4.你在为Healthlife公司创建一个在线订购的应用程序。
Healthlife的销售主要是制造和出售健康补给品给超过5000个客户。
你必须在页面上存储少量的要提交给服务器的页面细节信息。
这些信息不必设置安全性。
一些顾客报告他们不能正确检测(付帐后离开)。
你预测到在网上订购者的数量很多,你必须保存服务器资源。
你该怎么做?(CD)(A)在应用程序的状态变量中存储信息。
(B)在会话的状态变量中存储信息。
(C)在Microsoft SQL Server数据库存储信息(D)在页面的隐藏文件中存储信息。
5.在中,文本框控件TextBox允许多种输入模式,包括单行、多行和密码输入模式,这是通过设置其(B)属性来区分的。
(A)Style(B)TextMode(C)Type(D)Input6.综合IIS,验证用户身份的方法包括Windows验证、(B)验证和Microsoft Password身份验证。
(A)Web(B)Forms(C)Login(D)User7.下列哪个对象不是 Web应用程序上下文包含的内部对象?(D)(A)Application(B)Context(C)Server(D)Config8.要确保用户输入的密码满足一定的复杂度,可以使用的服务器验证控件为(D)。
(A)RequiredFieldValidator(B)CompareValidator(C)RangeValidator(D)RegularExpressionValidator9.DataList包括的模板中,必须指定的模板为(A)。
第1章 ASP基础

第1章 ASP基础 ASP基础
1.1 静态网页与动态网页 1.2 ASP概述 ASP概述 1.3 ASP的运行 ASP的运行
1.1 静态网页与动态网页
Web采用一种被称为“瘦客户机”的技术,使用B/S Web采用一种被称为“瘦客户机”的技术,使用B/S (Browser/Server,浏览器/服务)模型。 Browser/Server,浏览器/
Server Browser 请求 响应
1.1 静态网页与动态网页
根据Web 服务器向Web 浏览器发送页面的 根据 Web服务器向 Web浏览器发送页面的 内容可将网页分为两种:静态网页和动态网 页。 静态网页是指对于所有访问该网页的用户来 说,在其客户端浏览器的显示内容都是一样 的 。 又称为“ 普通HTML 网页” , 其文件的 又称为 “ 普通 HTML网页 ” 扩展名为.htm或 html。 扩展名为.htm或.html。 动态网页会根据用户的不同需求显示不同的 内容。 内容。
<%@ LANGUAGE = "VBScript" %> <HTML><TITLE>我的第一个ASP程序</TITLE> <HTML><TITLE>我的第一个ASP程序</TITLE> <BODY> <% For i = 3 To 7 %> <FONT size=<% = i %>> 欢迎光临!<BR> 欢迎光临!<BR> </FONT> <% Next %> </BODY> </HTML>
所有的 ASP 命令都必须包含在 < % 和 %> 之内 , 如: < % =date %> , ASP 通过包含在 < % 和 %> 中的表达式将执行结果输出 到客户浏览器
aspnet程序设计课程设计
aspnet程序设计课程设计一、课程目标知识目标:1. 掌握的基本概念、原理及其开发环境配置。
2. 学会使用C#语言进行网页开发,理解服务器控件的使用。
3. 理解并掌握的页面生命周期、事件处理机制及状态管理。
4. 学会使用的内置对象,如Request、Response、Session和Server等。
技能目标:1. 能够独立创建网页,并运用控件构建用户界面。
2. 能够编写事件处理程序,实现用户交互功能。
3. 能够使用状态管理技术,实现不同页面间数据的传递与保存。
4. 能够运用所学的知识解决实际问题,设计并实现简单的应用程序。
情感态度价值观目标:1. 培养学生对程序设计的兴趣,激发学生学习编程的热情。
2. 培养学生的团队协作精神,提高沟通与协作能力。
3. 培养学生勇于探索、积极创新的精神,提高解决问题的能力。
4. 培养学生遵循编程规范,养成良好的编程习惯。
课程性质:本课程为高年级选修课,以实践为主,理论联系实际,注重培养学生的动手能力和创新能力。
学生特点:学生具备一定的编程基础,对网络编程有兴趣,希望学习实际应用开发。
教学要求:结合学生特点,注重理论与实践相结合,通过案例教学,引导学生掌握程序设计的基本知识和技能,培养其解决实际问题的能力。
在教学过程中,关注学生的学习进度和情感态度,鼓励学生积极参与,提高学习效果。
二、教学内容1. 基础知识- 概述与开发环境搭建- C#语言基础及其在中的应用- 服务器控件的使用与事件处理2. 页面生命周期与状态管理- 页面生命周期及各个阶段的作用- 事件处理机制及页面事件的使用- 状态管理技术(如视图状态、隐藏字段、会话状态等)3. 内置对象- Request对象的使用与获取客户端数据- Response对象的使用与发送响应数据- Session对象的使用与管理用户会话状态- Server对象及其他内置对象的功能与应用4. 控件与用户界面设计- 常用控件的使用(如标签、文本框、按钮等)- 数据绑定控件(如GridView、DropDownList等)- 用户控件与自定义控件的设计与应用5. 数据库编程- 概述与数据库连接- 数据命令的执行与数据读取- 数据绑定技术与数据展示6. 实践项目与案例分析- 设计并实现一个简单的博客系统- 分析并优化现有应用程序的案例教学内容安排与进度:第1周:基础知识及开发环境搭建第2周:C#语言基础及其在中的应用第3周:页面生命周期与事件处理第4周:内置对象及其使用方法第5周:控件与用户界面设计第6周:数据库编程第7周:实践项目设计与开发第8周:课程总结与案例分析三、教学方法本课程采用以下多样化的教学方法,旨在激发学生的学习兴趣,提高学生的主动性和实践能力:1. 讲授法:通过教师对的基本概念、原理、技术要点进行系统讲解,帮助学生建立完整的知识体系。
.NET4.0 获取用户访问次数
4.0 获取用户访问次数
在编程中,有时候需要统计用户访问网站次数。
这时可以使用前面讲到的Cookie内置对象来实现该功能,在该内置对象中,用户可以根据需要来设置内置对象的不同属性来完成各种功能。
(1)在Visual Studio2010中,执行【文件】|【新建】|【网站】命令,新建名为ShowContent的空网站。
(2)打开【文件】|【新建文件】命令,弹出【添加新项】对话框。
在该对话框中选择“Web窗体”模板,并输入文件名称为Counts.aspx,单击【添加】按钮。
然后可以看到在【解决方案资源管理器】面板中会显示文件Counts.aspx以及它的代码页文件Counts.aspx.cs。
(3)在【解决方案资源管理器】面板中,双击“Counts.aspx”树状菜单元素,打开Counts.aspx文件输入以下代码并保存。
(4)在【解决方案资源管理器】面板中,双击“Counts.aspx.cs”树状菜单元
(5)执行上述代码,结果如图5-10所示。
图5-10 执行结果。
ASP
通常使用asp开发系统需要实现的功能:
1.Email发送 Internet上用asp开发应用,一般都是面向用户的,比如需要注册用户,这 样就可能需要把用户密码发送到用户的email信箱里面去。另外建立邮件列 表,文章转发,密码提醒等等功能都要asp实现email发送。 2.动态图形生成 最熟悉的动态web图形应用应该是计数器了,如果是用几个图形拼成计数 器图形,可能就不太专业,可以用图形组件拼成一个完整图形。另外可以 使用图形组件生成某些统计图形。例如:饼图,条形图。通常所见的程序 如:网上调查就常以饼图来直观的显示结果。还可以使用曲线图形或柱状 图形来分析某些数据(比如网站流量分析) 3.文件上传 文件上传也是一个急需的组件。使用文件上传可以实现客户端和服务器端 的文件/数据交换。通常的用途是上传图片或word、excel文件,然后就可 以入库,以便系统使用。如开发新闻系统时使用文件上传系统上传新闻图 片,从而实现web在线新闻编辑。
PART 1
ASP
PART 2
研发背景
PART 3
研发历史
PART 4
历史漏洞
PART 5
相关组件
PART 6
PART 9
实例
PART 8
特点功能
工作流程
运行环境
PART 7
soft公司 于1996年推出的一 种Web应用开发技 术asp,用于取代对 Web服务器进行可 编程扩展的CGI标准。
ASP新增功能
ASP 的新增功能除了内部性能增强和优化外,该版本的 Active Server Pages(ASP) 还具有如下新功能: ① 更好的国际化和 UTF-8 支持。UTF-8 支持已经被扩展到所有 ASP 内置对象的 属性和方法中。以前版本的 ASP 仅在响应和写入方面支持 UTF-8。 ② 改进的 POST 支持。ASP 目前可以从客户端读取 Chunked 编码的 POST 数 据。 ③ ASP 挂起检测。当 IIS 网站繁忙时,可能会出现这样的情况:迅速生成最大数 量的 ASP 线程,其中的一些 ASP 线程被挂起,从而导致性能下降。 HSE_REQ_REPORT_UNHEALTHY 以及万维网发布服务(WWW 服务)将回收主控 ASP.dll 的工作进程,并将项目添加到事件日志中。 ④ 常用文件的缓存。目前,ASP 除了保留内存缓存之外,还在磁盘上缓存一些最 常用的文件。 ⑤ ASP 中的 COM+ 服务。如果想要在以前版本的 IIS 中使用 ASP 应用程序提供 的 COM+ 服务,您必须创建可以调用那些服务的方法的 COM 组件。而现在可以配 置 ASP 应用程序以使用下面的 COM+ 服务而不必创建 COM 组件。
互联网软件与开发期末考试试题B及答案
浙江**学院期终考试《互联网软件应用与开发》试卷B班级学号姓名B 卷闭卷一、单项选择题(本大题共15小题,每小题1分,共15分)1.在互联网软件开发过程中,明确项目目标这一工作所在的阶段是A.规划阶段B.设计阶段C.建设和测试阶段D.投入使用阶段2.下列UML模型描述图中,模型元素包括同步线的是A.合作图B.活动图C.状态图D.序列图3.在数据库中,每个表都具有的完整性约束是A.非空值完整性约束B.键值唯一性完整性约束C.主键完整性约束D.外键完整性约束4.根据TCP/IP协议规定,IP地址结构包括地址类别、网络号和A.主机号B.域名C.链接D.端口5.在IIS6.0支持的身份验证方法中,基本身份验证方法是A.将密码作为散列值发送到服务器B.将用户名和密码以明文方式发送到服务器C.允许网络任意用户进行访问D.使用散列技术标识用户,但不发送密码到服务器6.使用HTML语言编写的简单网页最基本的结构是A.<html><head><body>...</body></head></html>B.<head><body><html>...</html></body></head>C.<html><body>...</body><head>...</head></html>D.<html><head>...</head><body>...</body></html>7.以下关于HTML中的表格说法不正确...的是A.<table>标记是表格数据与布局的容器B.在<td>单元中,一定要包含有数据C.<td>的结束标记是</td>D.在表格中,<td>与<th>标记都可以用来分隔表格数据8.以下不属于...<SELECT>标记的选项值是A.multiple B.nameC.size D.checked9.在JavaScript语言中,属于关系运算符的是A.>= B.&&C.= D.++10.下列关于J2EE的说法不正确...的是A.J2EE具有“编写一次,随处运行”的特性B.J2EE技术的基础是核心Java平台或Java 2平台的标准版C.基于J2EE平台的产品只能部署到Windows操作系统上D.WebLogic、JBoss、Tomcat都可以作为J2EE服务器11.以下关于数据库连接池描述不正确...的是A.可以使特定用户重复使用连接B.不能节约服务器资源C.能够提升应用程序的性能D.可以将数据库连接作为对象存储在一个Vector对象中12.Tomcat服务器的默认端口是A.80 B.8000C.8080 D.809013.在JSP内置对象中,可以提供对输出流访问的是A.out B.request C.session D.application14.在PHP中,下面的数据是整型的是A."123" B.123.5C.true D.12315.在PHP中,选择数据库的函数是A.mysql_connect() B.mysql_query()C.mysql_select_db() D.mysql_close()二、填空题(本大题共10小题,每小题1分,共10分)16.在互联网软件项目的开发过程中,项目经理必须不断执行以下活动:______和估计、跟踪和调度、沟通。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、Response对象Response对象是HttpResponse类的一个实例。
该类主要是封装来自操作的HTTP响应信息。
1.Response对象的属性①BufferOutput说明:获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个页之后将其发送属性值:如果缓冲了到客户端的输出,则为true;否则为false。
默认为true②Cache说明:获取Web页的缓存策略(过期时间、保密性、变化子句)属性值:包含有关当前响应的缓存策略信息的HttpCachePolicy对象③Charset说明:获取或设置输出流的HTTP字符集属性值:输出流的HTTP字符集④IsClientConnected说明:获取一个值,通过该值指示客户端是否仍连接在服务器上属性值:如果客户端当前仍在连接,则为true;否则为false2.Response对象的方法Response对象可以输出信息到客户端,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie 的值。
中引用对象方法的语法是“对象名.方法名”。
“方法”就是嵌入到对象定义中的程序代码,它定义对象怎样去处理信息。
使用嵌入的方法,对象便知道如何去执行任务,而不用提供额外的指令。
①Write说明:将指定的字符串或表达式的结果写到当前的HTTP输出②End说明:停止页面的执行并得到相应结果③Clear说明:用来在不将缓存中的内容输出的前提下,清空当前页的缓存,仅当使用了缓存输出时,才可以利用Clear方法④Flush说明:将缓存中的内容立即显示出来。
该方法有一点和Clear方法一样,它在脚本前面没有将Buffer属性设置为True时会出错。
和End方法不同的是,该方法调用后,该页面可继续执行⑤Redirect说明:使浏览器立即重定向到程序指定的URL二、Request对象1.Request对象的属性①QueryString说明:获取HTTP 查询字符串变量集合属性值:NameValueCollection对象②Path说明:获取当前请求的虚拟路径属性值:当前请求的虚拟路径③UserHostAddress说明:获取远程客户端的IP 主机地址属性值:远程客户端的IP地址④Browser说明:获取有关正在请求的客户端的浏览器功能的信息属性值:HttpBrowserCapabilities对象2.Request对象的方法①BinaryRead说明:执行对当前输入流进行指定字节数的二进制读取②MapPath说明:为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径三、Application对象Application对象是HttpApplicationState类的一个实例。
HttpApplicationState类的单个实例,将在客户端第一次从某个特定的应用程序虚拟目录中请求任何URL 资源时创建。
对于Web服务器上的每个应用程序,都要创建一个单独的实例。
然后通过内部Application 对象公开对每个实例的引用。
Application对象使给定应用程序的所有用户之间共享信息,并且在服务器运行期间持久地保存数据。
因为多个用户可以共享一个Application对象,所以必须要有Lock和Unlock方法,以确保多个用户无法同时改变某一属性。
Application对象成员的生命周期止于关闭IIS或使用Clear方法清除。
1.Application对象的属性①AllKeys说明:获取HttpApplicationState集合中的访问键属性值:HttpApplicationState对象名的字符串数组②Count说明:获取HttpApplicationState集合中的对象数属性值:集合中的Item对象数。
默认为02.Application对象的方法①Add说明:新增一个新的Application对象变量②Clear说明:清除全部的Application对象变量③Get说明:使用索引关键字或变数名称得到变量值④GetKey说明:使用索引关键字來获取变量名称⑤Lock说明:锁定全部的Application变量⑥Remove/RemoveAll说明:使用变量名称删除一个Application对象/删除全部的Application对象变量⑦Set说明:使用变量名更新一个Application对象变量的內容⑧UnLock说明:解除锁定的Application变量四、Session对象Session对象是HttpSessionState的一个实例。
该类为当前用户会话提供信息,还提供对可用于存储信息的会话范围的缓存的访问,以及控制如何管理会话的方法。
Session的出现填补了HTTP协议的局限。
HTTP协议工作过程是,用户发出请求,服务器端做出响应,这种用户端和服务器端之间的联系都是离散的,非连续的。
在HTTP协议中没有什么能够允许服务器端来跟踪用户请求的。
在服务器端完成响应用户的请求后,服务器端不能持续与该浏览器保持连接。
从网站的观点上看,每一个新的请求都是单独存在的,因此,当用户在多个主页间转换时,就根本无法知道他的身份。
使用Session对象存储特定用户会话所需的信息。
这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
当用户请求来自应用程序的Web页时,如果该用户还没有会话,则Web服务器将自动创建一个Session对象。
当会话过期或被放弃后,服务器将中止该会话。
当用户第一次请求给定的应用程序中的aspx文件时,将生成一个SessionID。
SessionID是由一个复杂算法生成的号码,它唯一标识每个用户会话。
在新会话开始时,服务器将Session ID作为一个cookie存储在用户的Web浏览器中。
在将SessionID cookie存储于用户的浏览器之后,即使用户请求了另一个.aspx文件,或请求了运行在另一个应用程序中的.aspx文件,仍会重用该cookie跟踪会话。
与此相似,如果用户故意放弃会话或让会话超时,然后再请求另一个.aspx文件,那么将以同一个cookie开始新的会话。
只有当服务器管理员重新启动服务器,或用户重新启动Web浏览器时,此时存储在内存中的SessionID设置才被清除,用户将会获得新的SessionID cookie。
通过重用SessionID cookie,Web应用程序将发送给用户浏览器的cookie数量降为最低。
另外,如果用户决定该Web应用程序不需要会话管理,就可以不让Web应用程序跟踪会话和向用户发送SessionID。
Session对象最常见的一个用法就是存储用户的首选项。
例如,如果用户指明不喜欢查看图形,另外其还经常被用在鉴别客户身份的程序中。
要注意的是,会话状态仅在支持cookie的浏览器中保留,如果客户关闭了cookies选项,Session也就不能发挥作用了。
的Sessions非常好用,能够利用Session对象来对Session全面控制,如果需要在一个用户的Session中存储信息,只需要简单地直接调用Session对象就可以了,下面就是个例子:Session["Myname"]=Response.form("Username");Session["Mycompany"]=Response.form("Usercompany");应注意的是,Session对象是与特定用户相联系的。
针对某一个用户赋值的Session对象是和其他用户的Session对象完全独立的,不会相互影响。
换句话说,这里面针对每一个用户保存的信息是每一个用户自己独享的,不会产生共享情况。
很明显,对于不同的用户,Session对象的Myname变量和Mycompany变量各自是不同的,当每个人在网站的不同主页间浏览时,这种针对个人的变量会一直保留,这样作为身份认证是十分有效的。
1.Session对象的属性①Count说明:获取会话状态集合中Session对象的个数属性值:Session对象的个数②TimeOut说明:获取或设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限属性值:超时期限(以分钟为单位)③SessionID说明:获取用于标识会话的唯一会话ID属性值:会话ID2.Session对象的方法①Add说明:新增一个Session对象②Clear说明:清除会话状态中的所有值③Remove说明:删除会话状态集合中的项④RemoveAll说明:清除所有会话状态值三、Server对象Server对象是HttpServerUtility的一个实例。
该对象提供对服务器上的方法和属性的访问。
1.Server对象的属性①MachineName说明:获取服务器的计算机名称属性值:本地计算机的名称②ScriptTimeout说明:获取和设置请求超时属性值:请求的超时设置(以秒计)2.Server对象的方法①CreateObject说明:创建COM 对象的一个服务器实例②CreateObjectFromClsid说明:创建COM 对象的服务器实例,该对象由对象的类标识符(CLSID)标识③Execute说明:使用另一页执行当前请求④Transfer说明:终止当前页的执行,并为当前请求开始执行新页⑤HtmlDecode说明:对已被编码以消除无效HTML字符的字符串进行解码⑥HtmlEncode说明:对要在浏览器中显示的字符串进行编码⑦MapPath说明:返回与Web服务器上的指定虚拟路径相对应的物理文件路径⑧UrlDecode说明:对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器⑨UrlEncode说明:编码字符串,以便通过URL从Web服务器到客户端进行可靠的HTTP传输六、Cookie对象Cookie 是一小段文本信息,伴随着用户请求和页面在Web服务器和浏览器之间传递。
用户每次访问站点时,Web应用程序都可以读取Cookie包含的信息。
Cookie跟Session、Application类似,也是用来保存相关信息,但Cookie和其他对象的最大不同是,Cookie将信息保存在客户端,而Session和Application是保存在服务器端。
也就是说,无论何时用户连接到服务器,Web站点都可以访问cookie信息。
这样,既方便用户的使用,也方便了网站对用户的管理。
包含两个内部Cookie集合。
通过HttpRequest的Cookies集合访问的集合包含通过Cookie标头从客户端传送到服务器的Cookie。