Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)qq
published in(发表于) 2014/7/9 1:36:51
asp.net2.0内置Application对象的方法

asp.net2.0内置Application对象的方法

Application对象的方法

Application对象常用方法及说明如表1所示。



表1 Application对象常用方法及说明

下面对比较重要的方法进行详细介绍。

(1)Add方法。用于在Application对象中添加一个新的变量。

语法:

public void Add (string name,Object value)

参数说明如下。

name:要添加到Application对象中的变量名。

value:变量的值。

例如,在Application对象中添加一个值为test的app变量,代码如下:

Application.Add("app", "test");

(2)Lock和UnLock方法。Lock方法用于锁定全部Application对象变量,以促进访问同步。

语法:

public void Lock ()

UnLock方法用于解除锁定的Application对象变量,以促进访问同步。

语法:

public void UnLock ()

* 示例

使用Lock和UnLock方法实现在线人数统计

本示例实现当程序运行时,在页面中显示当前的在线人数。示例运行结果如图1所示。



图1 使用Lock和UnLock方法实现在线人数统计

程序代码如下。

添加一个Global.asax全局程序集文件,在该文件中的Application_Start事件中定义一个Application变量,并将其初始化值设置为0,该变量用来记录网站的在线人数。Application_Start事件代码如下:

void Application_Start(object sender, EventArgs e)

{

Application["count"] = 0;

}

当一个新会话启动时,在Session_Start事件中锁定Application变量,以防止因为多个用户同时访问页面而造成的并行操作,同时将该变量的值加1,然后调用Application对象的UnLock方法解除锁定的Application变量。Session_Start事件代码如下:

void Session_Start(object sender, EventArgs e)

{

Application.Lock();

Application["count"] = Convert.ToInt32(Application["count"]) + 1;

Application.UnLock();

}

当一个会话结束时,在Session_ End事件中锁定Application变量,同时将该变量的值减1,然后调用Application对象的UnLock方法解除锁定的Application变量。 Session_End事件代码如下:

void Session_End(object sender, EventArgs e)

{

Application.Lock();

Application["count"] = Convert.ToInt32(Application["count"]) - 1;

Application.UnLock();

}

Default.aspx页面的Page_Load事件中,将定义的Application变量的值赋给Label控件,以在该页中显示当前的在线人数。Default页面的Page_Load事件代码如下:

protected void Page_Load(object sender, EventArgs e)

{

Label1.Text = Application["count"].ToString();

}

(3)Remove方法。用于从Application对象中移除指定名称的变量。

语法:

public void Remove (string name)

参数说明如下。

name:要从Application对象中移除的变量名。

例如,在Application对象中移除名称为app的变量,代码如下:

Application.Remove("app");

完整程序代码如下:

★ ★★★★Default.aspx代码文件完整程序代码★★★★★

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>







无标题页









当前在线人数为:








★ ★★★★Default.aspx.cs代码文件完整程序代码★★★★★

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)


If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759