asp.net 页面间传值与跳转的区别

 更新时间:2010年04月07日 15:15:53   作者:  
通过Server.Transfer("b.aspx") 与Response.Redirect("b.aspx")的区别
在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;
  }
}

相关文章

最新评论