asp.net 頁面傳值方法

SieSteven發表於2014-08-26

今天開始接著弄c#基礎。

如題所示,討論一下asp.net頁面間傳值的方式。目前只知道三種(頁面跳轉Response.Redirect(“url”))

1.QueryString 方式

頁面A和頁面B之間進行傳值。

B.aspx?param1=***;param2=**;...


B頁面: if (null != Request.QueryString["id"])
            {
                strMsg += @"          querystring傳遞的引數:" + Request.QueryString["id"] + @"";
                ScriptManager.RegisterStartupScript(this, this.GetType(), "", "<script>alert('" + strMsg + "');</script>", false);
            }


2.Session【“”】

A頁面

 Session["type"] = 1;
            Session["redirectName"] = "redirectName";
            Session["redirectSex"] = "redirectSex";
            Response.Redirect("ArguementTransfer.aspx?rname=1232;rsex=3333");

B頁面

  if (Session["type"].ToString()=="1")
            {
                 string strMS = "redirectName 的值:" + Session["redirectName"];
            strMS += "           redirectSex 的值:" + Session["redirectSex"];
            TextBox1.Text = strMS;
            TextBox1.Width = 500;
            }


3.比較坑爹,用Server.Transfer(“url”)

需要把A整個頁面以物件方式傳給B。

A頁面

  _strResult = n.ToString();
            Server.Transfer(url);



B頁面

   #region Server.Transfer
            if (Session["type"].ToString()=="0")
            {
                 chapter1 c1;
            c1 = (chapter1)Context.Handler;
            string strResult = c1._strResult;
            TextBox1.Text = strResult;
            }
           
            #endregion




相關文章