Application、Server 和 Session 对象[续]
接上文Application、Server 和 Session 对象
Application 对象
表示 ASP.NET 应用程序的一个实例
控制访问
Application.Lock();
//…修改应用程序变量值的代码
……………
…………
……………
Application.UnLock();
·Lock 方法将锁定脚本中的所有变量
·确保只有当前用户控制该页面
·当调用 UnLock 方法时当前用户将失去对应用程序的控制
数组变量
2 job[0] = "教员";
3 job[1] = "程序员";
4 job[2] = "售货员";
5 job[3] = "经理";
6 Application ["j"] = job;
7
8<HTML><script Language ="C#" runat ="server" >
9void Page_Load(Object Src, EventArgs E)
10{ int i = 0; String[] k;
11k = (String[])Application["j"];
12for (i = 0; i<k.Length;i++)
13{ Response.Write(k[i] + "<br>");
14} } </script> </HTML>
运行效果:
HttpServerUtility类和Server对象
·HttpServerUtility类提供用于处理 Web 请求的 Helper 方法
·Server 对象获取当前请求的内部服务器对象
·Server对象可以通过HttpApplication类和Page类的属性来获得
Server 对象
Execute 方法
2<script language="C#" runat="server">
3void clicked (Object Src, EventArgs E)
4{Server.Execute("Ch5Ex5.aspx");}
5</script><form runat ="server">
6<asp:button id = "btnClick" onclick = "clicked" Text = "要转移执行,请单击此处 " runat = "server" />
7</form></html>
Transfer 方法
Server.Transfer("Ch5Ex5.aspx");
HTMLEncode 方法
语法:Server.HTMLEncode (string)
例:Response.Write(Server.HtmlEncode("<H1> 是标题标记的示例 </H1>"));
Response.Write("<br><H1> 是标题标记的示例 </H1>");
URLEncode 方法
语法:Server.URLEncode (string)
例:Response.Write(Server.UrlEncode("http://localhost/code/map.aspx"));
=>http%3a%2f%2flocalhost%2fcode%2fmap.aspx
MapPath 方法
语法:Server.MapPath (path)
例:Response.Write( Server.MapPath("/Ch5Ex5.aspx"));
=>“C:\Inetpub\wwwroot\codes\Ch5Ex5.aspx”
<html>
<script language="C#" runat="server">
void Page_Load (Object Src, EventArgs E)
Response.Write(Server.MapPath("/Ch5Ex5.aspx"));
}
</script>
<form runat ="server">
</form>
</html>
HttpSessionState类和Session对象
HttpSessionState 类提供对会话状态值以及会话级别设置和生存期管理方法的访问
Session对象是HttpSessionState类的实例,可以通过HttpApplication类和Page类的属性来获得
[完成]