asp.net 内置对象简介
这里主要介绍[request],[response],[server],[session],[cookie],[application]
准确的说:asp.net并没有所谓的内置对象,jsp中确实把[request],[response],[server]......,这些作为内置对象,这里只不过借用说法而已。
那么为什么说这些是内置对象呢,实际上就是在asp.net中使用它们的时候,无需实例[new]这些对象。
注意:在asp.net中所有的.aspx页面都继承[System.Web.UI.Page]这个类(直接继承或者间接继承)。而上面提到的对象多是这个类中的属性。
在web中,处于中心的web服务器,用来处理客户端[http://...]协议请求([http]协议是指文本传输协议),由于[http]是一种无状态的请求协议,
它不会记得上一次水请求了它,因此不会主动询问客户端,所以只有客户端主动访问之后,服务器才会响应。
Request:封装了客户端请求信息。Request的常见属性如下:
|
属性名 |
值类型 |
说明 |
|
ApplicationPath |
String |
获取请求的资源在网站上的根的路径 |
|
ContentEncoding |
Encoding |
设置请求对象的编码 |
|
Cookies |
HttpCookieCollcetion |
客户端向服务器发送的cookies集合 |
|
QueryString |
NameValueCollcetion |
当前请求的查询字符串集合 |
|
UrlReferrer |
Url |
获取用户由那个Url跳转到当前页面 |
Response:代表了服务器响应对象。每次客户端发出一个请求的时候,服务器就会用一个响应对象来处理这个请求,
处理完这个请求之后,服务器就会销毁这个相应对象,以便继续接受其它客服端请求。
Response常用属性如下:
|
属性名 |
值类型 |
说明 |
|
Charset |
String |
表示输出流所使用的字符集 |
|
ContentEncoding |
Encoding |
设置输出流的编码 |
|
ContentLength |
int |
输出流字节的大小 |
|
ContentType |
string |
输出流的HTTP MIME类型 |
|
Cookies |
HttpCookieCollcetion |
返回给客户端的Cookies集合 |
| Output | TextWrite | 服务器返回对象的字符输出流 |
| RedirectLocation | String | 将当前请求重定向 |
Response常用方法如下:
| 属性名 | 返回值类型 | 说明 |
| AppendCookie | void | 向相应的cookies集合中追加一个cookie |
| Clear | void | 清楚缓存区所有的内容输出 |
| Close | void | 关闭当前服务器到客户端的链接 |
| End | void | 终止相应,并将缓存区的数据向客户端输出 |
| Redirect | void | 重定向当前请求 |
Server对象是用于获取服务器的相关信息的对象。它常用方法如下:
| 属性名 | 返回值类型 | 说明 |
| Excete | void | 执行指定的资源,执行完成后,继续执行页面的代码 |
| HtmlDecode | string | 消除对特殊字符串编码的影响 |
| HtmlEncode | string | 对特殊字符串编码 |
| MapPath | string |
获取指定相对路径在服务器上的物理路径 |
| Transfer | void | 停止执行当前程序,执行指定资源 |
| UrlDecode | string | 对路径字符进行解码 |
| UrlEncode | string | 对路径字符进行编码 |
[session],[cookie],[application]
下面是Session、Cookie和Application的区别:
|
名称 |
使用范围 |
存储位置 |
存放数据类型 |
生命周期 |
|
Session |
特定用户 |
服务器 |
Object,也就是任意类型 |
有,可以自行设置 |
|
Cookie |
特定用户 |
客户端 |
String,也就值字符串 |
可以自行设置 |
|
Application |
所有用户 |
服务器 |
Object,也就是任意类型 |
无(应用程序关闭时消失) |

浙公网安备 33010602011771号