首页 > 学院 > 开发设计 > 正文

c#中页面之间传值传参的六种方法

2019-11-17 03:06:52
字体:
来源:转载
供稿:网友
c#中页面之间传值传参的六种方法

QueryString ; 是一种简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.传递一个或者多个安全性不高或是数据简单的数值时,可以用,传递数组或者对象的话,就不能用

PRivate void Button1_Click(object sender, System.EventArgs e){    string url;    url="b.aspx?name="+Lable1.Text;}b.aspx 中的c#代码private void Page_Load(object sender, EventArgs e){    Lable2.Text=Request.QueryString["name"];}

query传值又分为post , get 格式

//post请求

string name = Request["name"].toString();

string name =Request.Form.Get("name").toString();

//get请求 string name = Request.QueryString["name"].toString(); 但我发现 无论是否是post与get传值都可用 string name = Request["name"].toString();

application对象传值

a.aspx的c#代码

private void Button1_Click(object sender, System.EventArgs e){    Application["name"]=Label.Text;    Server.Transfer("b.aspx");}

b.aspx的c#代码

private void Page_Load(object sender, EventArgs e){    string name;    Application.Lock();    name=Application["name"].ToString();    Application.UnLock();}

使用session变量

a.aspx的c#代码

private void Button1_Click(object sender, System.EventArgs e){    Session["name"]=Lable.Text;    }

b.aspx中c#代码

private void Page_Load(object sender, EventArgs e){    string name=Session["name"].ToString();}

使用Cookie对象变量

a.aspx中的C#代码

private void Button1_Click(object sender, System.EventArgs e){    HttpCookie cn=new HttpCookie("name");    cn.Value=Lable.Text;    Reponse.AppendCookie(cn);    Server.Transfer("b.aspx");}

b.aspx中的c#代码

private void Page_Load(object sender, EventArgs e){    string name=Request.Cookie["name"].Value.ToString();}

使用Server.Transfer()方法

a.aspx的c#代码

public string Name{    get{return Lable1.Text;}}private void Button1_Click(object sender, System.EventArgs e){    Server.Transfer("b.aspx");}

b.aspx的c#代码

private void Page_Load(object sender, EventArgs e){    a newWeb;    newWeb=(source)Context.Handler;    string name;    name=newWeb.Name;}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表