2017-5-22 ASP六大 内置对象

时间:2023-03-09 09:23:41
2017-5-22    ASP六大 内置对象

ASP内置对象:提供内建对象,这些对象使用户更容易收集通过浏览器请 求发送的信息、响应浏览器以及存储用户信息(如用户首选项)。

地址栏传两个值: Response.Redirect("Default2.aspx?a=" + TextBox1.Text + "&b=" + TextBox2.Text);

1.Request  --- 获取请求对象

  获取通过地址栏传值过来的对象

  string aaa = Request["key"];  key必须和传值的对象名称相同

2.Response  ---  响应请求对象

  Response.Redirect("新打开的网址?aa=key");/ Response.Redirect("新打开的网址?aa="+key)

  地址栏传值/URL传值/QueryString传值优势:不占用服务器内存,保密性查,传递的长度有限

   ?aa=key  要传递的对象   只能在原有页面上进行刷新,无法打开新的选项卡

  Response.Write("string");  --- 将字符串输出到页面的最顶部,string可以书写js代码,打开新的网址

3.Session

  优势:1.存贮在服务端,占用服务器内存2.传输速度快3.不要滥用,容易溢出

  生命周期:20分钟,每一次的请求都会刷新这个时间,如果浏览器关闭,就会断开此次Session的链接

  Session可以存贮Object类型

  Session页面传值:

string aa = TextBox1.Text;
Session["zz"] = aa;
Response.Redirect("bb.aspx");

  接收的页面:

  Label1.Text = Session["zz"].ToString();

  传递实例化的对象:

2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象
 protected void Page_Load(object sender, EventArgs e)
{
Button1.Click += Button1_Click; } void Button1_Click(object sender, EventArgs e)
{
Users u = new Users();
u.username = "小明";
u.sex = "男";
Session["zz"] = u;
Response.Redirect("bb.aspx");
}
2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象

  接收的页面:

  

     Users u = new Users();
u = Session["zz"] as Users;
Label1.Text = u.username + u.sex;

4.Cookie

  cookie和session一模一样,不一样的地方是:Cookies是存储在客户端的

  两者的优缺点:

    Session很安全,但是消耗服务器内存,Cookies,不消耗服务器内存,存在客户端上,但是有可能被访问

  cookie判断为不为空:

    if(Request.Cookies["aa"]!=null){}  --- 直接判断接收的值是不是为空

  设置持久cookie:

    String u = TextBox1.Text;

    Response.Cookies["aa"].Value =u;

    Response.Cookies["aa"].Expires = DateTime.Now.AddDays(3);----  设置cooki持续的时间3天,不同的浏览器都有自己的cooki,与保存的时间无关,只是在当前浏览器下保存

cookie的退出:

2017-5-22    ASP六大 内置对象

 页面传值:

2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象
 protected void Page_Load(object sender, EventArgs e)
{
Button1.Click += Button1_Click; } void Button1_Click(object sender, EventArgs e)
{
string u = TextBox1.Text;
Response.Cookies["zz"].Value = u;
Response.Redirect("bb.aspx");
}
2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象

  接收的页面:

  

2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象
 protected void Page_Load(object sender, EventArgs e)
{ string u = Request.Cookies["zz"].Value;
Label1.Text = u;
}
2017-5-22    ASP六大 内置对象
2017-5-22    ASP六大 内置对象

5、Application:

  全局公共变量组

  存放位置:服务器

  特点:所有访问用户都是访问同一个变量,但只要服务器不停机,变量一直存在于服务器的内存中,不要使用循环大量的创建Application对象,可能会造

     成服务器崩溃。

  生命周期:永久,只要服务器不停机

  使用方法:与Session一样

6、ViewState:

  用于记录页面的一些状态,就像人的病例,比如当执行提交后,网页可以保留一些已经输入的文本框而非清空

  webform中微软已经给我们做好了这个对象,自带此功能。