文/彭晓川
本文从分析net 内置对象作用入手,介绍了Application 内置对象的基本使用方法, 最后以.net 开发网站在线聊天室为例探讨了Application 内置对象的技术应用要点。
摘 要
变量名=Application[“Application 名称”];1.3 加锁与解锁为了避免同时访问的冲突现象发生,ASP.NET 引入了Lock 和Unlock 两个方法,在使用前对Application 加锁,用后对其解锁,可以防止其他用户修改存储在Application 对象中的变量,直到用户使用Unlock 方法或超时才可以,这样就确保在同一个时刻只有一个用户可以修改和访问Application 变量。加锁:Lock(),锁定对 Application 变量的访问以促进访问同步。即Application.lock()。解锁:UnLock(),取消锁定对 Application变量的访问以促进访问同步。即Application.Unlock()。
2 下面以在线聊天室为例探讨Application内置对象在网站有的技术应用
新建一个ASP.NET 网站,新建两个web页文件,chat.aspx,showchat.aspx 分别代表聊天页和显示聊天页,在chat.aspx 中进行聊天信息页面布局。
(1)插入一个三行二列的表格,在第一行中置标签Label1,label2 用来分别显示在线人的姓名,统计访问的人次。
(2) 将第二行两个单元格合并且置入iframe 标签, 并将加载的源src 设置为chatshow.aspx 文件,用来记录聊天信息的。
(3)在第三行第一个单元格放置一个标签label3,用来显示“我要说”,在另一个单元格中分别置入一个文本框TextBox1,和一个提交按扭Button1 分别用来输入本次发言的内容,及完成内容的提交操作。具体的功能实现,主要使用Application 内置对象技术:
一个普通的在线聊天室一般都要统计在线人数。在代码页chat.aspx.cs 文件中定义使用Application["count"] 变量,用来保存在线人数或是访问次数。即在网站的Page_Load 事件中源码:if (!IsPostBack){Label1.Text = Session["name"].ToString();if (Application["count"] != null){Application.Lock();A p p l i c a t i o n [ " c o u n t " ] = ( i n t )Application["count"] + 1;Application.UnLock();}else{Application["count"] = 1;}}Label2.Text = "您是第" + Application["count"].ToString() + " 位访客";}同时,为了完成聊天信息的提交,可以看到在页面中设置了一个文本框,用来输入留言的信息。当点击提交按钮时,将信息保存到另一个Application["chat"] 变量之中保存起来。if (!IsPostBack){Application.Lock();Application["chat"]=Application["chat"].ToString()+ Session["name"].ToString() + " 在"+ DateTime.Now.ToString("HH:mm") + " 说" +TextBox1.Text + "<br>";Application.UnLock();}else{Ap p l i c a t i o n [ " c h a t " ]=S e s s i o n [ " n ame"].ToString()+" 在"+ DateTime.Now.ToString("HH:mm") + TextBox1.Text + "<br>";}其中Session["name"] 是一个会话内置对象,用来保存登陆成功者的姓名。从上面分析可以看出Application 内置对象的一般用法及技术要点。在实际应用中,除了用于开发在线聊天室功能外,也可以完成计数器,投票等功能。
作者简介
彭晓川,助教,研究方向为计算机科学教育、信息管理。
作者单位
广州大学松田学院 广东省广州市 511370__