ASP.NET学习小结

ASP.NET网页不同于ASP或者PHP的地方:asp.net页面在一次请求的时候会被编译成DLL文件,由JIT编译执行,因而aspx页面第一次被打开的时候比较慢,而后执行的时候就会比较快,;而asp和php网页每次运行的时候都会被解释执行,因而asp.net网站的运行速度要快。

ASP.NET夜话:ASP.NET内置对象

request

Rsponse

Server

Session

Cookie

Application

<%%>及<%=%>

在ASP.NET中所有的网页都是继承System.Web.UI.Page这个类。

Request封装了客户端请求信息。Request的常见属性

属性名值类型说明
ApplicationPathstring获取请求的资源在网站上的根路径
ContentEncodingEncoding设置请求对象的编码
CookiesHttpCookieCollection客户端发送到服务器的Cookie集合
QueryStringNameValueCollection当前请求的查询字符串集合
UrlReferrerUri获取用户由哪个url跳转到当前页面

Response

Response代表了服务器响应对象。每次客户端发出一个请求的时候,服务器就会用一个响应对象来处理这个请求,处理完这个请求后服务器就会销毁这个相应对象,以便继续接受其他客户端请求。

Response常用属性

 

属性名

值类型

说明

Charset

string

表示输出流的所使用的字符集

ContentEncoding

Encoding

设置输出流的编码

ContentLength

Int

输出流的字节大小

ContentType

string

输出流的HTTP MIME类型

Cookies

HttpCookieCollection

服务器发送到客户端的Cookie集合

Output

TextWriter

服务器响应对象的字符输出流

RedirectLocation

string

将当前请求重定向

Response常用方法

 

AppendCookie

void

向响应对象的Cookie集合中增加一个Cookie

Clear

void

清空缓冲区中的所有内容输出

Close

void

关闭当前服务器到客户端的连接

End

void

终止响应,并且将缓冲区中的输出发送到客户端

Redirect

void

重定向当前请求

Server


Server对象是用于获取服务器的相关信息的对象。它常用方法如下:

 

属性名

返回值类型

说明

Execute

void

执行指定的资源,并且在执行完之后再执行本页的代码

HtmlDecode

string

消除对特殊字符串编码的影响

HtmlEncode

string

对特殊字符串进行编码

MapPath

string

获取指定相对路径在服务器上的无力路径

Transfer

void

停止执行当前程序,执行指定的资源

UrlDecode

string

对路径字符串进行解码

UrlEncode

string

对路径字符串进行编码

Session

Session对象用来保存与特定用户相关的信息,Session中的数据保存在服务器端,在客户端需要的时候创建Session,在客户端不需要的时候销毁Session,使它不再占用内存。

Session的生命周期是20分钟。

session具有以下特点

Session中的数据保存在服务器端;

Session中可以保存任意类型的数据

Session的默认周期是20分钟,可以手动设置更长,或者更短的时间。

假设我们要设置一个Session用来保存用户名,这个Sesison的名字是"UserName",值是“zhoufoxcn”,代码如下:

Session["UserName"]="zhoufoxcn";

获取Session的值算是一种拆箱操作而不是强制类型转换,对于上面的Session获取Session的值的代码如下:

string username=(string)Session["UserName"];

对于此代码有个问题需要注意:当没有设置相应的Session或者Session因为超过生命周期而被销毁的时候可能抛出异常。可以先判断是否存在指定的

Session,如果不存在就不用获取了,改进代码如下:

string usernam;

if(Session["UserName"]!=null)

{

userName=(string)Session["UserName"];

}

 

 

Cookie

Cookie保存在客户端上,每次客户端请求的时候都会把Cookie一起发送到服务器,服务器每次响应客户端请求的时候会重新把Cookie发送到客户端保存。

Cookie保存数据有以下特点:

Cookie中的数据保存在客户端;

Cookie中只能保存字符串类型的数据,如果需要在Cookie中保存其他类型的数据,需要将其转换成字符串类型后保存。

Cookie也有默认的生命周期关闭浏览器失效

Session和Cookie是针对特定用户保存的数据,如果希望看到共有的信息,大家都能设置获取,就需要使用Application.

 

Application

Application和Session存储的数据类型和存储位置一样,都是存放Object类型的数据(也就是任意类型),并且存放在服务器上,不同的Application中的数据可以由网站中所有的用户来设置或者获取。并且Application中存放的数据没有时间限制,除非我们手动删除或者服务器重新启动,否则存放的数据都会丢失。

下面是Session、Cookie和Application的区别:

 

名称

使用范围

存储位置

存放数据类型

生命周期

Session

特定用户

服务器

Object,也就是任意类型

有,可以自行设置

Cookie

特定用户

客户端

String,也就值字符串

可以自行设置

Application

所有用户

服务器

Object,也就是任意类型

<%%>表达式

<%%>用来编写程序的代码部分。可以再其中声明变量和方法,在<%%>中就是符合C#要求的代码

 

 

<%=%>表达式

  <%=%>是用来向输出流中输出变量的值。其用法<%int i=6;%>

<%=i%>

 


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值