书签 分享 收藏 举报 版权申诉 / 43

类型内置对象应用程序配置和缓存.docx

  • 文档编号:26681192
  • 上传时间:2023-06-21
  • 格式:DOCX
  • 页数:43
  • 大小:261.53KB
");

上述代码则会向浏览器输出一串HTML流并被浏览器解析,如图13-3所示。

图13-3Response.Write方法

当希望在Response对象运行时,能够中途进行停止时,则可以使用End方法对页面的执行过程进行停止,示例代码如下所示。

for(inti=0;i<100;i++)//循环100次

{

if(i<10)//判断i<10

{

Response.Write("当前输出了第"+i+"行


");//i<10则输出i

}

else//否则停止输出

{

Response.End();//使用了End方法停止执行

}

}

上述代码循环输出HTML流“当前输出了第X行”,当输出到10行时,则停止输出,如图13-4所示。

图13-4Response.End方法

Redirect方法通常使用于页面跳转,示例代码如下所示。

Response.Redirect("");//页面跳转

执行上述代码,将会跳转到相应的URL。

13.1.3Application状态对象

Application对象是HttpApplication类的实例,将在客户端第一期从某个特定的ASP.NET应用程序虚拟目录中请求任何URL资源时创建。

对于Web应用上的每个ASP.NET应用程序都要创建一个单独的实例。

然后通过内部Application对象公开对每个实例进行引用。

1.Application对象的特性

对于Application对象有如下特性:

❑数据可以在Application对象之内进行数据共享,一个Application对象可以覆盖多个用户。

❑Application对象可以用InternetServiceManager来设置而获得不同的属性。

❑单独的Application对象可以隔离出来并运行在内存之中。

❑可以停止一个Application对象而不会影响到其他Application对象。

Application对象常用的属性有:

❑AllKey:

获取HttpApplicationState集合中的访问键。

❑Count:

获取HttpApplicationState集合中的对象数。

其中Application对象的常用方法有:

❑Add:

新增一个Application对象变量。

❑Clear:

清除全部的Application对象变量。

❑Get:

通过索引关键字或变量名称得到变量的值。

❑GetKey:

通过索引关键字获取变量名称。

❑Lock:

锁定全部的Application对象变量。

❑UnLock:

解锁全部的Application对象变量。

❑Remove:

使用变量名称移除一个Application对象变量。

❑RemoveAll:

移除所有的Application对象变量。

❑Set:

使用变量名更新一个Application对象变量。

2.Application对象的使用

通过使用Application对象的方法,能够对Application对象进行操作,使用Add方法能够创建Application对象,示例代码如下所示。

Application.Add("App","MyValue");//增加Application对象

Application.Add("App1","MyValue1");//增加Application对象

Application.Add("App2","MyValue2");//增加Application对象

若需要使用Application对象,可以通过索引Application对象的变量名进行访问,示例代码如下所示:

Response.Write(Application["App1"].ToString());//输出Application对象

上述代码直接通过使用变量名来获取Application对象的值。

通过Application对象的Get方法也能够获取Application对象的值,示例代码如下所示。

for(inti=0;i

{

Response.Write(Application.Get(i).ToString());//输出Application对象

}

Application对象通常可以用来统计在线人数,在页面加载后可以通过配置文件使用Application对象的Add方法进行Application对象的创建,当用户离开页面时,可以使用Application对象的Remove方法进行Application对象的移除。

当Web应用不希望用户在客户端修改已经存在的Application对象时,可以使用Lock对象进行锁定,当执行完毕相应的代码块后,可以解锁。

示例代码如下所示。

Application.Lock();//锁定Application对象

Application["App"]="MyValue3";//Application对象赋值

Application.UnLock();//解锁Application对象

上述代码当用户进行页面访问时,其客户端的Application对象被锁定,所以用户的客户端不能够进行Application对象的更改。

在锁定后,也可以使用UnLock方法进行解锁操作。

13.1.4Session状态对象

Session对象是HttpSessionState的一个实例,Session是用来存储跨页程序的变量或对象,功能基本同Application对象一样。

但是Session对象的特性与Application对象不同。

Session对象变量只针对单一网页的使用者,这也就是说各个机器之间的Session的对象不尽相同。

例如用户A和用户B,当用户A访问该Web应用时,应用程序可以显式的为该用户增加一个Session值,同时用户B访问该Web应用时,应用程序同样可以为用户B增加一个Session值。

但是与Application不同的是,用户A无法存取用户B的Session值,用户B也无法存取用户A的Session值。

Application对象终止于IIS服务停止,但是Session对象变量终止于联机机器离线时,也就是说当网页使用者关闭浏览器或者网页使用者在页面进行的操作时间超过系统规定时,Session对象将会自动注销。

1.Session对象的特性

Session对象常用的属性有:

❑IsNewSession:

如果用户访问页面时是创建新会话,则此属性将返回true,否则将返回false。

❑TimeOut:

传回或设置Session对象变量的有效时间,如果在有效时间内有没有任何客户端动作,则会自动注销。

注意:

如果不设置TimeOut属性,则系统默认的超时时间为20分钟。

Session对象常用的方法有:

❑Add:

创建一个Session对象。

❑Abandon:

该方法用来结束当前会话并清除对话中的所有信息,如果用户重新访问页面,则可以创建新会话。

❑Clear:

此方法将清除全部的Session对象变量,但不结束会话。

注意:

Session对象可以不需要Add方法进行创建,直接使用Session[“变量名”]=变量值的语法也可以进行Session对象的创建。

2.Session对象的使用

Session对象可以使用于安全性相比之下较高的场合,例如后台登录。

在后台登录的制作过程中,管理员拥有一定的操作时间,而如果管理员在这段时间不进行任何操作的话,为了保证安全性,后台将自动注销,如果管理员需要再次进行操作,则需要再次登录。

在管理员登录时,如果登录成功,则需要给管理员一个Session对象,示例代码如下所示。

protectedvoidButton1_Click(objectsender,EventArgse)

{

Session["admin"]="guojing";//新增Session对象

Response.Redirect("Session.aspx");//页面跳转

}

当管理员单击注销按钮时,则会注销Session对象并提示再次登录,示例代码如下所示。

protectedvoidButton2_Click(objectsender,EventArgse)

{

Session.Clear();//删除所有Session对象

Response.Redirect("Session.aspx");

}

在Page_Load方法中,可以判断是否已经存在Session对象,如果存在Session对象,则说明管理员当前的权限是正常的,而如果不存在Session对象,则说明当前管理员的权限可能是错误的,或者是非法用户正在访问该页面,示例代码如下所示。

protectedvoidPage_Load(objectsender,EventArgse)

{

if(Session["admin"]!

=null)//如果Session[“admin”]不为空

{

if(String.IsNullOrEmpty(Session["admin"].ToString()))//则判断是否为空字符串

{

Button1.Visible=true;//显式登录控件

Button2.Visible=false;//隐藏注销控件

//Response.Redirect("admin_login.aspx");//跳转到登录页面

}

else

{

Button1.Visible=false;//显式注销控件

Button2.Visible=true;//隐藏注销控件

}

}

}

上述代码当管理员没有登录时,则会出现登录按钮,如果登录了,存在Session对象,则登录按钮被隐藏,只显示注销按钮。

其HTML代码如下所示。

ButtonID="Button1"runat="server"onclick="Button1_Click"Text="登录"/>

ButtonID="Button2"runat="server"onclick="Button2_Click"Text="注销"/>

上述代码运行后如图13-5和图13-6所示。

图13-5登录前图13-6登录后

当再次单击【注销】按钮时则会清空Session对象,再次返回登录窗口时会呈现同图13-5所示。

13.1.5Server服务对象

Server对象是HttpServerUtility的一个实例,该对象提供对服务器上的方法和属性进行访问。

1.Server对象的常用属性

Server对象的常用属性如下所示。

❑MachineName:

获取远程服务器的名称。

❑ScriptTimeout:

获取和设置请求超时。

通过Server对象能够获取远程服务器的信息,示例代码如下所示。

protectedvoidPage_Load(objectsender,EventArgse)

{

Response.Write(Server.MachineName);//输出服务器信息

}

上述代码运行后将会输出服务器名称,本例输出为“WIN-YXDGNGPG621”,这个输出结果根据服务器的名称不同而不同。

2.Server对象的常用方法

Server对象的常用方法如下所示。

❑CreatObject:

创建COM对象的一个服务器实例。

❑Execute:

使用另一个页面执行当前请求。

❑Transfer:

终止当前页面的执行,并为当前请求开始执行新页面。

❑HtmlDecode:

对已被编码的消除Html无效字符的字符串进行解码。

❑HtmlEncode:

对要在浏览器中显示的字符串进行编码。

❑MapPath:

返回与Web服务器上的执行虚拟路径相对应的物理文件路径。

❑UrlDecode:

对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器。

❑UrlEncode:

编码字符串,以便通过URL从Web服务器到客户端浏览器的字符串传输。

在ASP.NET中,默认编码是UTF-8,所以在使用Session和Cookie对象保存中文字符或者其他字符集时经常会出现乱码,为了避免乱码的出现,可以使用HtmlDecode和HtmlEncode方法进行编码和解码。

HTML页面代码如下所示。

HtmlDecode:

LabelID="Label1"runat="server"Text="Label">

Label>

HtmlEncode:

LabelID="Label2"runat="server"Text="Label">

Label>

上述代码使用了两个文本标签控件用来保存并呈现编码后

配套讲稿:

如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

特殊限制:

部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

关 键  词:
内置 对象 应用程序 配置 和缓
提示  冰豆网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:内置对象应用程序配置和缓存.docx
链接地址:https://www.bdocx.com/doc/26681192.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2008-2022 冰点文档网站版权所有

经营许可证编号:鄂ICP备2022015515号-1

收起
展开