[ASP.NET]網頁間傳遞參數3種方法紀錄一下

摘要:[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;