摘要:[ASP.NET]網頁間傳遞參數3種方法紀錄一下
從網路上看到網頁傳遞參數方法 http://big5.webasp.net/article/18/17444.htm
實際做了兩種紀錄一下
1. QueryString, 簡單的方式但是參數透過網址傳送比較危險
參數原始頁
String url ="ExamSystem.aspx?testid=" + DropDownList1.SelectedValue
Response.Redirect(url);
目的地頁
string a = Context.Request.QueryString["testid"];
2.Session
這種方式很簡單所以沒有再試
3.Server.Transfer的方式,雖然麻煩但是把參數獨立出來比較好修改
這篇文指指處Response 跟Server的不同處 http://blog.csdn.net/keymo_/article/details/7895450
1. Server.Transfer只能够转跳到本地虚拟目录指定的页面,而Response.Redirect则十分灵活;
2. Server.Transfer可以将页面参数方便传递到指定页面;
3. 使用时,Server.Transfer跳到别的页面后,浏览器显示的地址不会改变,有时反而会造成误会,当然也有些场合需要这样的效果;
4. Server.Transfer可以减少客户端对服务器的请求;
5. Response.Redirect()需要在服务器和客户端往返两次;Server.Transfer()在服务器端一次通信即可
參數起始頁新增entity
//3.Server.Transfer
//New entity in source website
public string Name {
get { return TextBox1.Text; }
}
public string TestId {
get { return DropDownList1.SelectedValue; }
}
參數起始頁
Server.Transfer("ExamSystem.aspx");
目的地頁
//create instance of source web form name
HRMS_ExamLogin wf1;
//get reference to current handler instance
wf1 = (HRMS_ExamLogin)Context.Handler;
Label8.Text = wf1.Name;
Label9.Text = wf1.TestId;