asp.net 網(wǎng)頁傳參的幾種常用方式
第一種:QueryString
//將源頁面start.aspx中的lable 和textbox中的內(nèi)容傳到end.aspx頁面中 并在其lable 和textbox中顯示傳過來的內(nèi)容
源頁面代碼:
protected void Button1_Click(object sender, EventArgs e)
{
string url;
url = "end.aspx?name="+Label1.Text+"&home="+TextBox1.Text;
Response.Redirect(url);
}
目標(biāo)頁代碼:
protected void Page_Load(object sender, EventArgs e)
{
///通過QueryString傳參數(shù)
Label1.Text = Request.QueryString["name"];
TextBox1.Text=Request.QueryString["home"];
}
<!--StartFragment -->
第二種:通過Session傳參數(shù)
源頁面代碼:
protected void Button1_Click(object sender, EventArgs e)
{
Session["name"]=Label1.Text;
Session["home"] = TextBox1.Text;
Server.Transfer("end.aspx");
}
目標(biāo)頁代碼:
protected void Page_Load(object sender, EventArgs e)
{
//通過Session傳參數(shù)
Label1.Text=Session["name"].ToString();
TextBox1.Text = Session["home"].ToString();
//應(yīng)該使用一些清理動(dòng)作來去除一些不需要的session來降低資源的無謂消耗.
Session.Remove("name");
Session.Remove("home");
}
第三種:使用Server.Transfer傳參數(shù)
該方法雖然麻煩,但是你可以在另一個(gè)頁面以對(duì)象屬性的方式來存取顯露的值。
原頁面代碼:
public partial class start: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
//使用Server.Transfer方法
Server.Transfer("end.aspx");
}
//此處設(shè)定變量name和home的返回值,以便在目標(biāo)頁面中作為屬性值顯示
public string name
{
get
{
return Label1.Text;
}
}
public string home
{
get
{
return TextBox1.Text;
}
}
}
目標(biāo)頁代碼:
public partial class end : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//此處把目標(biāo)頁面_Default作為一個(gè)類,而name和home都為其屬性值
start wf1;
wf1 = (start)Context.Handler;
Label1.Text = wf1.name;
TextBox1.Text = wf1.home;
}
}
posted on 2012-05-10 21:17 ** 閱讀(803) 評(píng)論(0) 編輯 收藏