WebForm多页面传值跳转

一、URL传值

 URL传值是利用跳转地址直接加变量定义内容

格式:跳转地址?任意变量=传的值--?=之间不能有空格

多条数据传值 在地址栏继续拼接&key=value 
void Button1_Click(object sender, EventArgs e)
{
string path = "Default2.aspx?aaa=" + TextBox1.Text + "&bbb=" + TextBox2.Text;

Response.Redirect(path);}
接收值得界面:
Label1.Text = Request["aaa"];
Label1.Text += "," + Request["bbb"];

 二、Session传值

Session简介:

在服务器中为每个用户浏览器创建的一个会话对象(session对象)。

注意:1、一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。

2、Session存放时间20min

3、浏览器关闭断开此条链接,不能再次访问

4、Session里面存储Object类型,可存储对象

Session传值:

1.赋值:

 protected void Page_Load(object sender, EventArgs e)
    {
        //session赋值
        string s="tr";
        Session["first"] = s;
        //页面传输
        Response.Redirect("Main.aspx");
    }

2、session取值:

protected void Page_Load(object sender, EventArgs e)
    {
        //变量接收
        string a = Session["first"].ToString();
        //存放到控件
        Label1.Text = a;
    }

问题:关闭浏览器再次输入跳转地址报错

解决方案:在取值时先进行if判断 --session["key"]!=null;

三、Cookie传值

1、赋值:

protected void Page_Load(object sender, EventArgs e)
    {
        //session赋值
        string s="tr";
        Response.Cookies["first"].Value = s;
        //增长保存时常
        Response.Cookies["first"].Expires=DateTime.Now.AddDays(3);
        //页面传输
        Response.Redirect("Main.aspx");
    }

2、取值:

protected void Page_Load(object sender, EventArgs e)
    {
        //防报错判断 
        if(Request.Cookies["first"]!=null)
        {//变量接收
        string a =Request.Cookies  ["first"].Value;
        //存放到控件
        Label1.Text = a;
    }
    }

cookie 和session 的区别:

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
   考虑到安全应当使用session。

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
   考虑到减轻服务器性能方面,应当使用COOKIE。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、cookie关闭浏览器打开同一浏览器地址有值,session无值,cookie在不同浏览器同一地址无值

 

posted on 2017-05-26 10:57 瀚城老爷子 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/hclyz/p/6885318.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值