ASP.NET内置对象
2011-11-16 19:37
387 查看
转自http://blog.sina.com.cn/s/blog_4a93ccea0100cxfv.html
一、ASP.NET 提供的7大内置对象:
Response 服务器端将数据作为请求的结果发送到浏览器端(输出)
Request 浏览器端对当前页请求的访问发送到服务器端(输入)
Application 存储跨网页程序的变量或对象,中止于停止IIS服务(公用变量和对象)
Session 存储跨网页程序的变量或对象,中止于联机离线或有效时间(单一用户对象)
Server 定义一个与Web服务器相关的类提供对服务器上方法和属性的访问
Cookie 保存客户端浏览器请求的服务器页面,存放保留非敏感用户信息
Cache Web应用程序的缓存
二、内置对象常用属性、方法或集合
1.Response对象:
实例:
Response.Write("欢迎光临天神的博客!<br>")
Response.WriteFile(@"E:\test.txt");
Response.Redirect("login.aspx");
Response.Write("<script>alert('警告,你不能继续使用本计算机!')</script>");//弹出一个窗口
Response.End; 用于调试程序检测出错地点(放在最前面一步步往下检测)
2. Request对象:
实例:查询浏览器的相关信息
Response.Write(Request.Browser.Platform);
Response.Write("<br>");
Response.Write(Request.UsrHostAddress);
Response.Write("<br>");
Response.Write(Request.QueryString);
Response.Write("<br>");
this.Label.Text=Request.QueryString["接受值"]; //接受地址传值
3.Application对象:
语法:
Application["变量"]="变量内容";
实例:
Application.Add("App1","Value1");
Application.Add("App2","Value2");
for(int i=0;i<Application.Count;i++)
{Response.Write("变量名:"+Application.GetKey(i));
Response.Write(",值:"+Application[i]+"<p>");
}
4.Session对象:
语法:
Sessionp["变量名"]="内容"; //对象中存放信息
VariablesName=Session["变量名"]; //从会话中读取信息
实例:
Session["name"]=this.Text1.Text; //放入Default.aspx页面中的TextBox控件
Response.Redirect("Default.aspx");
this.Label1.Text=Session["name"].ToString(); //在Default2.aspx页面中放入Label控件以读取会话中的信息。
5. Server对象:
实例:
Response.Write(Server.MapPath("Default.aspx"));
Response.Write(Server.HtmlEncode("<b>天神</b>"));
Response.Write(Server.HtmlDecode("<b>天神羽翼</b>"));
Response.Write(Server.MachineName);
Response.Write(Server.ScriptTimeOut);
6. Cookie对象:
语法:
Response.Cookies[Name].Value="资料"; //要存储一个Cookie变量可以通过Response对象的Cookies集合
变量名=Request.Cookies[Name].Value; //要取回Cookie,则要使用Request对象的Cookies集合,并将指定的Cookies集合返回。
实例:
if(Request.Cookies["user"]!=null)
{this.Label1.Text=Request.Cookies["user"]["username"];
this.Label2.Text=Request.Cookies["user"]["password"];
}
HttpCookie aCookie;
for(int i=0;i<Request.Cookies.Count;i++)
{ aCookie=Request.Cookies[i];
this.Label3.Text=string.Format("Cookie 用户名={0}<br>Cookie 值={1}",aCookie.Name,aCookie.Value);
}
}
7. Cache对象:
实例:为用户显示缓存中的某一项赋值
Cache.Add("Key1","Value",null,DateTime.Now.AddSeconds(60),TimeSpan.Zero,CacheItemPriority.High,onRemove);
——————————————————— Global.asax ———————————————————
Global.asax 文件响应ASP.NET和HTTP模块所引发的应用程序级别和会话级别事件的代码,运行时分析Global.asax文件并将其编译到一个动态生成的NET Framework类中,配置ASP.NET,以便自动拒绝对Global.asax文件的任何直接的URL请求,外部用户不能下载或查看其中的代码,它只在希望处理程序事件或会话事件时才创建它,不能用任何输出语句(比如Response.Write、HTML等),它用<script>标记语法来限制脚本,它是任何情况下都不能显示的。
一、ASP.NET 提供的7大内置对象:
Response 服务器端将数据作为请求的结果发送到浏览器端(输出)
Request 浏览器端对当前页请求的访问发送到服务器端(输入)
Application 存储跨网页程序的变量或对象,中止于停止IIS服务(公用变量和对象)
Session 存储跨网页程序的变量或对象,中止于联机离线或有效时间(单一用户对象)
Server 定义一个与Web服务器相关的类提供对服务器上方法和属性的访问
Cookie 保存客户端浏览器请求的服务器页面,存放保留非敏感用户信息
Cache Web应用程序的缓存
二、内置对象常用属性、方法或集合
1.Response对象:
属性 | 说明 | 方法 | 说明 |
Cache | 获取Web页缓存策略(过期时间、保密性等) | AppendToLog | 自定义日志信息添加到IIS日志文件 |
Charset | 设置或获取HTTP的输出字符编码 | Clear | 将缓冲区的内容清除 |
Expires | 设置或获取浏览器上缓存页过期之前的分钟数 | End | 将目前所有缓冲区中的内容发送至客户端后关闭 |
Cookies | 获取当前请求的Cookie集合 | Flush | 将缓冲区中所有的数据发送至客户端 |
IsClientConnected | 传回客户端是否仍然和Server连接 | Redirect | 将网页重新导向另一个地址 |
SuppressContent | 是否将HTTP的内容发送到客户端浏览器,若为true,则网页将不会传至客户端 | Write | 将数据输出到客户端浏览器 |
WriteFile | 将指定的文件直接写入HTTP内容数据流 |
Response.Write("欢迎光临天神的博客!<br>")
Response.WriteFile(@"E:\test.txt");
Response.Redirect("login.aspx");
Response.Write("<script>alert('警告,你不能继续使用本计算机!')</script>");//弹出一个窗口
Response.End; 用于调试程序检测出错地点(放在最前面一步步往下检测)
2. Request对象:
属性 | 说明 | 方法 | 说明 |
ApplicationPath | 获取服务器ASP.NET的虚拟应用程序根目录路径 | MapPath | 将请求的URL中的虚拟路径映射到服务器上的物理路径 |
Browser | 获取或设置有关正在请求的浏览器的功能信息 | SaveAs | 将HTTP请求保存到磁盘 |
ContentLength | 指定客户端发送的内容长度 | ||
Cookies | 获取客户端发送的Cookie集合 | ||
FilePath | 获取当前请求的虚拟路径 | ||
Files | 获取采用多部分MIME格式的由客户端上载的文件集合 | ||
Form | 获取窗体变量集合 | ||
Item | 获取Cookies、Form、QueryStringServerVariables集合中指定的对象 | ||
Params | 获取Cookies、Form、QueryStringServerVariables项的组合集合 | ||
Path | 获取当前请求的虚拟路径 | ||
QueryString | 获取HTTP查询字符串变量集合 | ||
UserHostAddress | 获取远程客户端IP主机地址 | ||
UserHostName | 获取远程客户端DNS名称(主机名) |
Response.Write(Request.Browser.Platform);
Response.Write("<br>");
Response.Write(Request.UsrHostAddress);
Response.Write("<br>");
Response.Write(Request.QueryString);
Response.Write("<br>");
this.Label.Text=Request.QueryString["接受值"]; //接受地址传值
3.Application对象:
集合名 | 说明 | 属性 | 说明 | 方法 | 说明 |
Contents | 用于访问应用程序状态集合中的对象名 | AllKeys | 返回全部Application对象变量名到一个字符串数组中 | Add | 新增一个Application对象变量 |
StaticObjects | 确定某对象指定属性的值或遍历集合,并检索所有静态对象的属性 | Count | 获取Application对象变量的数量 | Clear | 清除全部Application对象变量 |
Item | 允许使用索引或Application变量名称传回内容值 | Lock | 锁定全部Application对象变量 | ||
Remove | 使用变量名称移除一个Application对象变量 | ||||
RemoveAll | 移除全部Application对象变量 | ||||
Set | 使用变量名更新一个Application对象变量的内容 | ||||
UnLock | 解除锁定Application对象变量 |
Application["变量"]="变量内容";
实例:
Application.Add("App1","Value1");
Application.Add("App2","Value2");
for(int i=0;i<Application.Count;i++)
{Response.Write("变量名:"+Application.GetKey(i));
Response.Write(",值:"+Application[i]+"<p>");
}
4.Session对象:
集合名 | 说明 | 属性 | 说明 | 方法 | 说明 |
Contents | 用于确定指定会话项的值或遍历 | TimeOut | 传回或设定Session对象变量的有效时间,当使用者超过有效时间没有动作,Session对象就会失效,默认时间为20分钟 | Abandon | 结束当前会话,并清除会话中的所有信息。如果用户随后访问页面,可以为他创建新会话(重新建立会话) |
StaticObjects | 确定某对象指定属性的值或遍历集合,并检索所有静态对象的所有属性 | Clear | 清除全部的Session对象变量,但不结束会话 |
Sessionp["变量名"]="内容"; //对象中存放信息
VariablesName=Session["变量名"]; //从会话中读取信息
实例:
Session["name"]=this.Text1.Text; //放入Default.aspx页面中的TextBox控件
Response.Redirect("Default.aspx");
this.Label1.Text=Session["name"].ToString(); //在Default2.aspx页面中放入Label控件以读取会话中的信息。
5. Server对象:
属性 | 说明 | 方法 | 说明 |
MachineName | 获取服务器的计算机名称 | HttpDecode | 对已被编码以消除无效HTML字符的字符串进行解码 |
ScriptTimeOut | 获取和设置请求超时值(以秒计) | HttpEncode | 对要在浏览器中显示的字符串进行编码 |
MapPath | 返回与Web服务器上的指定虚拟路径相对应的物理文件路径 | ||
UrlDecode | 对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器 | ||
UrlEncode | 编码字符串,以便通过URL从Web服务器到客户端进行可靠的HTTP传输 |
Response.Write(Server.MapPath("Default.aspx"));
Response.Write(Server.HtmlEncode("<b>天神</b>"));
Response.Write(Server.HtmlDecode("<b>天神羽翼</b>"));
Response.Write(Server.MachineName);
Response.Write(Server.ScriptTimeOut);
6. Cookie对象:
属性 | 说明 | 方法 | 说明 |
Expires | 设定Cookie的有效时间,默认为1000分钟,若设为0,则可以实时删除Cookie变量 | Finalize | 允许Object在“垃圾回收”回收Object之前尝试释放资源并执行其他清理操作 |
Name | 获取Cookie变量的名称 | MemberwiseClone | 创建当前Object的浅表副本 |
Value | 获取或设置Cookie变量的内容值 | ||
Path | 获取或设置Cookie适用于的URL | ||
Port | 获取或设置Cookie适用于的TCP端口的列表 |
Response.Cookies[Name].Value="资料"; //要存储一个Cookie变量可以通过Response对象的Cookies集合
变量名=Request.Cookies[Name].Value; //要取回Cookie,则要使用Request对象的Cookies集合,并将指定的Cookies集合返回。
实例:
if(Request.Cookies["user"]!=null)
{this.Label1.Text=Request.Cookies["user"]["username"];
this.Label2.Text=Request.Cookies["user"]["password"];
}
HttpCookie aCookie;
for(int i=0;i<Request.Cookies.Count;i++)
{ aCookie=Request.Cookies[i];
this.Label3.Text=string.Format("Cookie 用户名={0}<br>Cookie 值={1}",aCookie.Name,aCookie.Value);
}
}
7. Cache对象:
属性 | 说明 | 方法 | 说明 |
Count | 获取存储在缓存中的项数 | Add | 将指定项添加到Cache对象 |
Item | 获取或设置指定键处的缓存项 | Get | 从Cache对象检索指定项 |
Insert | 向Cache对象插入项。使用此方法的某一版本改写具有相同Key参数的现有Cache项 | ||
Remove | 从应用程序的Cache对象移除指定项 |
Cache.Add("Key1","Value",null,DateTime.Now.AddSeconds(60),TimeSpan.Zero,CacheItemPriority.High,onRemove);
——————————————————— Global.asax ———————————————————
Global.asax 文件响应ASP.NET和HTTP模块所引发的应用程序级别和会话级别事件的代码,运行时分析Global.asax文件并将其编译到一个动态生成的NET Framework类中,配置ASP.NET,以便自动拒绝对Global.asax文件的任何直接的URL请求,外部用户不能下载或查看其中的代码,它只在希望处理程序事件或会话事件时才创建它,不能用任何输出语句(比如Response.Write、HTML等),它用<script>标记语法来限制脚本,它是任何情况下都不能显示的。
相关文章推荐
- Asp.net夜话之二:asp.net内置对象
- ASP.net内置对象Request和Response详解
- ASP,ASP.net,JSP语法、内置对象对比
- 实用ASP.NET七大内置对象详解
- Asp.net内置对象之Cookies(简介/属性方法/基本操作及实例)
- ASP.NET的内置对象介绍
- ASP.NET常用内置对象之——Server
- 实用ASP.NET七大内置对象详解
- 【转】ASP.NET的六大内置对象总结(
- ASP.NET内置组件对象
- asp.net 实验五 内置对象与缓存
- #01 ASP.NET内置对象属性(课堂学习部分)
- asp.net 六大内置对象(2)
- ASP.NET的内置对象介绍
- ASP.NET内置对象Session缺点及解决办法---by winter
- Asp.net夜话之二:asp.net内置对象
- ASP.NET的内置对象介绍
- Asp.net内置对象之Request对象(概述及应用)
- ASP.NET内置对象—Response对象
- ASP.NET五个内置对象组件