版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章,Application、Session和Cookie对象,2,回顾,传递Form表单中的控件值用Request.Form 获取值,地址栏中传递的参数用 Request.QueryString获取 通常用HttpResponse 类的属性Buffer、Cache、Cookie 和 Expires来设置站点的一些特性 HttpResponse 类常用方法是 Write()、End() 和 Redirect() HttpServerUtility 类的Execute()和Transfer()的区别关键在于执行后控制权是否返回原先页面、URLEncode()和HTMLEncode()主要用于对
2、HTML 标签和URL进行编码,对站点或程序的安全具有重要意思, MapPath()获取物理路径时需要注意是绝对路径还是相对路径,3,目标,运用Global.asax 文件 使用 Application 对象 创建并读取 Cookie 使用 Session 对象,4,ASP.NET中数值传递模型介绍,5,Global.asax 2-1,“Global.asax”,存储所有事件的事件处理程序,存储在应用程序的根目录下,它的位置定义应用程序的限界,包含所有应用程序的配置设置,6,Global.asax 2-2,httpApplication类,实例,事件,事件处 理程序,Global.asax,配
3、置设置,存储于,文件,7,TestingGlobal.aspx示例 4-1, protected void Application_Start(Object sender, EventArgs e) protected void Session_Start(Object sender, EventArgs e) Response.Write( “会话已开始 ); protected void Application_BeginRequest(Object sender, EventArgs e) Response.Write(“应用程序开始); Response.Write (“应用程序请求开
4、始); ,Global.asax 文件,打开代码隐藏类文件 Global.asax.cs。 将代码分别添加到 Global.asax.cs 中的各个事件中,8,TestingGlobal.aspx示例 4-2,protected void Application_EndRequest(Object sender, EventArgs e) Response.Write (“应用程序请求结束); protected void Session_End(Object sender, EventArgs e) Response.Write(“会话已结束); protected void Applica
5、tion_End (Object sender, EventArgs e) ,9,TestingGlobal.aspx示例 4-3,private void Page_Load(object sender, System.EventArgs e) Response.Write(“页面加载事件); ,将默认 ASP.NET 页面WebForm1.aspx重命名为TestingGlobal.aspx, 并添加给定的代码片段,10,TestingGlobal.aspx示例 4-4,刷新,会话尚未结束,输出结果,11,Application 对象存储并维护 应用程序级的数据,Application 对
6、象,Application 状态,HttpApplicationState,方法 集合,Application 状态,由它们表示,类,12,Application 变量,变量用于在应用程序执行时存储数据,页面级,对象级,变量,应用程序级 会话级,string myname = “张三; Response.Write (“欢迎 + myname);,13,对象级变量 3-1,protected void Application_Start(Object sender, EventArgs e) Application.Lock (); ApplicationUserNum =0; Applica
7、tion.UnLock(); ,清零,protected void Session_Start(Object sender, EventArgs e) Response.Write(调用Session_Start:会话已开始 ); Application.Lock(); ApplicationUserNum=int.Parse(ApplicationUserNum. ToString()+1; Application.UnLock(); ,增加在线人数,protected void Session_End(Object sender, EventArgs e) Response.Write(调
8、用Session_End:会话已结束); Application.Lock(); ApplicationUserNum=int.Parse(Application UserNum.ToString()-1; Application.UnLock(); ,减少在线人数,Global.asax文件,14,对象级变量 3-2,AppVariable.aspx,private void Page_Load(object sender, System.EventArgs e) / 在此处放置用户代码以初始化页面 Response.Write(你是第+ ApplicationUserNum.ToStrin
9、g() + 位访客); ,15,对象级变量 3-3,16,Lock 和 Unlock 方法,Lock(),Lock() 用于防止用户更改 Application 对象的属性,Lock() 可用作 Application.Lock(),UnLock(),Unlock() 方法用于释放对应用程序变量的锁定,UnLock() 可用作 Application.UnLock(),17,向应用程序添加、更新和移除项,HttpApplicationState 方法,Application 对象还提供 Get() 和 Set() 方法, 可用于按名称或索引获取对象,并相应地 更新对象的值,18,Cookies
10、,Cookie,在客户端系统中维护客户的个人信息,会话 Cookie,持久性 Cookie, ,19,创建和读取会话 Cookie,HttpCookie objHttpCookie = new HttpCookie(“UserName”, “张三); Response.Cookies.Add(objHttpCookie);,新建 Cookie,将新 Cookie 添加到 Response 对象的 Cookie 集合中,创建 Cookie,读取 Cookie,Response.Write(Request.Cookies(“UserName).Value);,Value 属性将 Cookie 的值
11、作为字符串返回,20,创建和读取持久性 Cookie,读取 Cookie,HttpCookie objHttpCookie = new HttpCookie(“UserName”,“张三); objHttpCookie.Expires = DateTime.Now.AddMinutes(2); Response.Cookies.Add(objHttpCookie);,新建 Cookie,用 Cookie 的 Expires 属性将 Cookie 的过期期限设置为两分钟,创建 Cookie,Response.Write(Request.Cookies(“UserName).Value);,21,
12、Session 对象,Session 对象用于存储用户的信息 当新用户请求应用程序的网页时,Server 对象会检查用户是否有 SessionID,Session 对象包含特定于某个用户的信息 在用户会话期间可以记录和监视特定于用户的信息 当会话过期或终止时,服务器就会清除 Session 对象,优点,22,Session 变量,Session 变量与 application 变量不同 Session 变量仅提供给会话中的特定用户 Session 变量可用于存储在整个用户会话过程中都可以访问的值,23,private void btnLogin_Click(object sender, Sys
13、tem.EventArgs e) if(this.txtName.Text.Trim()!= | this.txtPwd.Text.Trim()!=) if(this.txtName.Text=张三 ,在SessionVariableNew.aspx.CS添加如下代码,24,使用示例 3-2,在SessionVariable Welcome.aspx页面 添加如下代码,private void Page_Load(object sender, System.EventArgs e) if(SessionUserName.ToString().Trim()!=) Response.Write (alert(欢迎 +SessionUserName + 光临,你的密码是: +Requestpwd.ToString()+); else Response.Redirect(SessionVariableNew.aspx); ,25,使用示例 3-3,错误登录时,正确登录时,26,Session事件,Session_Start 当新用户访问一个应用程序时会激活该事件 Session_End 用户退出应用程序时,就会触发 Session_End 事件,27,Session 属性,Session_Start,Session_End,28,总结,Glo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能家居产品经理的面试要点与趋势分析
- 网络媒体企业人事部运作案例研究:记者和编辑招聘之道
- 市场经理的数字营销策略
- 企业内部信息安全体系面试手册
- 文化企业人事专员如何高效完成面试准备
- 手机研发团队软件工程师的招聘策略
- 家具厂事故预防预案
- 安全责任侵权指南讲解
- 教育信息化产品的市场营销战略要点详解
- 长远发展战略中项目经理的使命与挑战
- 新概念英语第一册随堂练习-Lesson127~128(有答案)
- 车辆运营服务合同模板
- 个人合作开店合同范例
- 学习二十国集团领导人峰会《建设一个共同发展的公正世界》重要讲话心得体会
- 煤炭英文术语
- 数字经济学 课件全套 第1-15章 数字经济学基础 - 数字经济监管
- 中医适宜技术-中药热奄包
- 2021年公务员多省联考《申论》题(河北乡镇卷)及参考答案
- 粘土矿物加工的创新方法
- DB11T 2279-2024 社会单位消防安全评估规范
- 美国ZOLLMseries除颤监护仪操作培训课件
评论
0/150
提交评论