ASP.NET页面间的传值的几种方法(总结)
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace QueryString

{
public partial class _Default : System.Web.UI.Page
{
/**//*姓名*/
public string Names 
{
get 
{
return this.Name.Text.Trim();
}
}



/**//*年龄*/
public int Ages
{
get
{
return Convert.ToInt32(this.Age.Text);
}
}


protected void Page_Load(object sender, EventArgs e)
{
}
//跳转页面
protected void BtnQuery_Click(object sender, EventArgs e)
{
// QueryString();
// PersonItemSession();
// Server.Transfer("ItemOrder.aspx");
Server.Transfer("ItemOrder.aspx",true);
}


/**//* Session*/
private void PersonItemSession()
{
Session["Name"] = this.Name.Text.Trim();
Session["Age"] = Convert.ToInt32(this.Age.Text);
Response.Redirect("ItemOrder.aspx");
}

/**//* QueryString */
private void QueryString()
{
/**//*
* Querystring是一种非常简单的传值方式,
* 其缺点就是会把要传送的值显示在浏览器的地址栏中,并且在此方法中不能够传递对象。
* 如果你想传递一个安全性不是那么太重要或者是一个简单的数值时,用此方法最好不过了。
*/
string Name = this.Name.Text.Trim();
int Age = Convert.ToInt32(this.Age.Text);

string url = string.Format("ItemOrder.aspx?name={0}&age={1}", Name, Age);
/**//*
* 使用Response.Redirect 导向ItemOrder.aspx页面
*/
Response.Redirect(url);
}
}
}
页面 ItemOrder.aspx
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace QueryString

{
public partial class ItemOrder : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

//RequestQueryString();
//GetSession();


/**//*获取来自Default.aspx 页面Age值 */
Response.Write( Request.Form["Age"]);



//创建原始窗体的实例,一样可以获取Default.aspx 页面的值
QueryString._Default
//获得实例化的句柄
df = (QueryString._Default)Context.Handler;
//获得实例化的句柄

Response.Write(df.Names);
Response.Write(df.Ages);




}

/**//*Session 取值 */
private void GetSession()
{
string name = Session["Name"] as string;
int age = Convert.ToInt32(Session["Age"]);
//使用完毕后移除
Session.Remove("Name");
Session.Remove("Age");
Response.Write(name);
Response.Write(age);
}

/**//*
* Querystring是一种非常简单的传值方式,
* 其缺点就是会把要传送的值显示在浏览器的地址栏中,并且在此方法中不能够传递对象。
* 如果你想传递一个安全性不是那么太重要或者是一个简单的数值时,用此方法最好不过了。
*/
private void RequestQueryString()
{
//使用Request.QueryString 取值
Response.Write( Request.QueryString["name"]);
Response.Write(Convert.ToInt32(Request.QueryString["age"]));
}
}
}
出处:http://www.cnblogs.com/liuyong/
作者喜欢研究 Sql Server ,ASP.NET MVC , Jquery WCF 等技术,同时关心分布式架构的设计应用。转载请保留原文链接,谢谢!
浙公网安备 33010602011771号