在a.aspx跳轉到b.aspx
通過Server.Transfer("b.aspx") 與Response.Redirect("b.aspx")的區別
如果是通過通過Server.Transfer()在a.aspx跳轉到b.aspx的,則在b.aspx頁面,可以查找到保存在a.aspx頁面中的 控件中的值,如果是Response.Redirect(),則得不到到a.aspx頁面中控件的值。
如果是通過Server.Transfer("b.aspx"),則可以通知以下方式得到 保留在 a.aspx中例如 Label,HiddenField中的值
復制代碼 代碼如下:
HiddenField hfOrderID = new HiddenField();
HiddenField hfPayMoney = new HiddenField();
if (Page.PreviousPage != null)
{
try
{
//
//查找母版頁 ,
MasterPage masterPage = (MasterPage)Page.PreviousPage.Controls[0];
//
//查找容器
ContentPlaceHolder contentPlaceHolder = (ContentPlaceHolder)masterPage.FindControl("ContentPlaceHolder3");
System.Web.UI.UserControl userControl = (System.Web.UI.UserControl)contentPlaceHolder.FindControl("MyOrder1");
//
//查找到對應的數據傳送HiddenField
hfOrderID = (HiddenField)userControl.FindControl("hfOrderID");
hfPayMoney = (HiddenField)userControl.FindControl("hfPayMoney");
//
//獲取傳入的訂單號
string strOrderID = hfOrderID.Value;
string strPayMoney = hfPayMoney.value;
}
}