跨页面传值
QueryString -- 地址栏数据拼接 ?key=value
优点:
简单好用,速度快,不消耗服务器内存
缺点:
只能传字符串
保密性不好
长度有限
Server.Transfer --也是地址栏传值方式,但是地址栏中不显示输出的内容,保密性好
内置对象:
Response - 响应请求对象
Response.Redirect(path); -- 重定向
Response.Write(" aaaa "); --输出内容
Request -- 获取请求对象
Request["key"] -- 默认返回的就是string类型
Session --相对全局对象
session["key"]=value
Session非常安全,它存在于服务器的内存中,取数据也是最快的。但是,Session不要滥用,因为Session里面内容太多会造成服务器内存溢出,导致服务器崩溃;但是也不要不用,造成资源浪费
Session生命周期:20分钟
Cookies
Cookies里面可以存内容,但是存的只能是字符串
会话Cookies生命周期:20分钟
持久Cookies,保存时间由网站代码来设置
Cookies是存在用户电脑的硬盘上
* 存汉字时,需要编码和解码:
设置编码:string a=HttpUtility.UrlEncode(TextBox1.Text, System.Text.Encoding.GetEncoding("utf-8"));
解码:string b=HttpUtility.UrlDecode(Request.Cookies["user"].Value, System.Text.Encoding.GetEncoding("utf-8"));
Application --全局对象,全局只有这一个对象
只要被创建出来,所有人取的值都是一样的
生命周期:永久
保存位置:服务端
ViewState (了解)
功能:记录上一个页面的信息