当前位置: 首页 > news >正文

ASP.NET第五章 Application、Session和Cookie对象

第五章

Global 全局的
1.包含所有应用程序的配置设置
2.存储所有事件的事件处理程序
3.存储在应用程序的根目录下
4.它的位置定义应用程序的限界


Global.asax六大事件:
1.Application_Start
调用当前应用程序目录(或其子目录)下的第一个 ASP.NET 页面时触发
2.Application End
应用程序的最后一个会话结束时触发用 Internet 服务管理器管理单元停止Web 应用程序时也会触发
3.Application BeginRequest
每次页面请求开始时触发(理想情况下是在页面加载或刷新时)
4.Application EndRequest
每次页面请求结束时(即每次在浏览器上执行页面时)触发
5.Session Start
每次新的会话开始时触发
6.Session End
会话结束时触发。(关于会话可以采用何种方式结束,请参见会话对象)


Application 对象
变量用于在应用程序执行时存储数据
页面级
string myname = “Graham ";
Response.Write (“欢迎 " + myname);

对象级
应用程序级
会话级

Lock 和 Unlock 方法 
上锁:
Lock() 用于防止用户更改 Application 对象的属性 
Lock() 可用作 Application.Lock() 

解锁:
Unlock() 方法用于释放对应用程序变量的锁定
UnLock() 可用作
Application.UnLock()


Application保存在服务端
Session存储于服务端
Cookie保存在客户端
Cookie:会话Cookie、持久性Cookie


Session 对象
1.Session 对象用于存储用户的信息 
2.当新用户请求应用程序的网页时,Server 对象会检查用户是否有 SessionID
3.优点
Session 对象包含特定于某个用户的信息
在用户会话期间可以记录和监视特定于用户的信息
当会话过期或终止时,服务器就会清除 Session 对象

Session 变量
Session 变量与 application 变量不同,Session 变量作用于局部,application 变量作用于全局
Session 变量仅提供给会话中的特定用户
Session 变量可用于存储在整个用户会话过程中都可以访问的值

Session事件
1.Session_Start
当新用户访问一个应用程序时会激活该事件
2.Session_End
用户退出应用程序时,就会触发 Session_End 事件

Session属性
1.SessionID
包含一个唯一的用户会话标识符。它用于在会话过程中跟踪用户的信息。要检索 SessionID,使用 Session.SessionID
2.TimeOut
设置用户超时,即它以分钟为单位指定 Session 对象在释放资源之前能够保持闲置的时间。用户可导航至另一个站点而不用关闭该应用程序。如果设定了超时属性,则无人操作的用户会话可被清除,由此释放服务器的资源。 默认值为 20 分钟。可通过在 ASPX 文件中赋值来更改此设置。例如,<% Session.Timeout = 10 %>
3.LCID
用于设定本地标志符. 它可存储本地信息,如日期、货币和时间格式。例如 Session.LCID = 0x040C 将本地标识符设定为法国本地标识符
4.IsNewSession
若该会话是由当前请求创建的,该属性将返回值 true
5.Item
获取或设置会话值的名称
6.Count
获得会话状态集合中的项数


总结:
1.Global.asax 文件包含常用的2.Application_Start、Application_End、Session_Start、Session_End等事件
3.Application 对象是存储于服务器的全局变量
4.Cookie 存储信息于客户端
5.Session 对象用于在服务器端存储用户的信息,在用户结束会话时被清除
6.新用户访问应用程序时会激活 Session_Start 事件,而用户退出应用程序时会7.触发 Session_End 事件

相关文章:

  • Python中包(package)与模块(module)的概念 以及 import 问题
  • Linux基本指令查询硬件信息001
  • reset database to incarnation rman 恢复最早的全备方法
  • MongoDB CRUD操作:地理位置应用——通过地理空间查询查找餐厅
  • 【小白专用24.6.8】c#异步方法 async task调用及 await运行机制
  • Django 默认 CSRF 保护机制
  • Linux基础指令网络管理003
  • spring-kafka-生产者服务搭建测试(SpringBoot整合Kafka)
  • 【环境搭建】3.阿里云ECS服务器 安装Redis
  • Django框架中级
  • html+css示例
  • 可以抛弃纸质礼金簿了,以后登记礼金可以用这款小程序
  • Docker的网络管理
  • 人工智能--教育领域的运用
  • C++协程
  • [译]Python中的类属性与实例属性的区别
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • Angular数据绑定机制
  • mongodb--安装和初步使用教程
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • PHP 的 SAPI 是个什么东西
  • React-redux的原理以及使用
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 关于字符编码你应该知道的事情
  • 盘点那些不知名却常用的 Git 操作
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 微信开放平台全网发布【失败】的几点排查方法
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • mysql面试题分组并合并列
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #pragma预处理命令
  • (4)(4.6) Triducer
  • (day18) leetcode 204.计数质数
  • (python)数据结构---字典
  • (附源码)ssm高校社团管理系统 毕业设计 234162
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (论文阅读30/100)Convolutional Pose Machines
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (转)memcache、redis缓存
  • (转)VC++中ondraw在什么时候调用的
  • (转)甲方乙方——赵民谈找工作
  • **CI中自动类加载的用法总结
  • .bat文件调用java类的main方法
  • .gitignore文件使用
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .Net Core 笔试1
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • .NetCore 如何动态路由
  • .NetCore发布到IIS
  • .NET编程C#线程之旅:十种开启线程的方式以及各自使用场景和优缺点
  • .net开发日常笔记(持续更新)