C#实现.net页面之间传值传参方法汇总

2019-12-26 11:59:59于丽

5. get安全性非常低,post安全性较高。

二、使用Application 对象变量

Application对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock。

a.aspx的C#代码

复制代码 private void Button1_Click(object sender, System.EventArgs e)
{
     Application["name"] = Label1.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变量

想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。

a.aspx的C#代码

复制代码 private void Button1_Click(object sender, System.EventArgs e)
{
     Session["name"] = Label.Text;
}
b.aspx中C#代码
复制代码 private void Page_Load(object sender, EventArgs e)
{
     string name;
     name = Session["name"].ToString();
}
四、使用Cookie对象变量

 

这个也是大家常使用的方法,与Session一样,其是什对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.NET内置对象Request来使用。

a.aspx的C#代码

复制代码 private void Button1_Click(object sender, System.EventArgs e)
{
     HttpCookie cookie_name = new HttpCookie("name");
     cookie_name.Value = Label1.Text;
     Reponse.AppendCookie(cookie_name);
     Server.Transfer("b.aspx");
}
b.aspx中C#代码
复制代码 private void Page_Load(object sender, EventArgs e)
{
     string name;
     name = Request.Cookie["name"].Value.ToString();