2011-04-07 121 views
0

我有一個.aspx網頁,裏面有一個html表單,這裏也有兩個輸入框。ASP.net在頁面間傳遞數據

什麼是最好的方式來獲取輸入框數據並將其傳遞到一個新的.aspx頁面,並通過請求方法處理它。

回答

0

假設數據是不敏感的,然後將它傳遞給使用Response.Redirect和查詢字符串新頁面使用的最佳方法:

protected void MyFormSubmitButton_Click(Object sender, EventArgs e) 
{ 
    string value1 = txtValue1.Text; 
    string value2 = txtValue2.Text; 

    // create a querystring 
    string queryString = "x=" + value1 + "&y=" + value2; 

    // redirect to the encoded querystring 
    Response.Redirect("NewPage.aspx?" + Server.URLEncode(queryString)); 
} 
0

嘗試Server.Transfer

終止當前的執行 頁面,並通過使用頁面的指定URL路徑 開始執行新的 頁面。指定是否清除QueryString和 集合。 如果將preserveForm參數 設置爲true,則目標頁面將能夠使用 PreviousPage屬性, 訪問 上一頁的視圖狀態。

您的主頁:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (Page.IsPostBack) 
    { 
     // ThreadAbortException occurs here. 
     // See http://support.microsoft.com/kb/312629 for more details. 
     Server.Transfer("AnotherPage.aspx", true); 
    } 
} 

「AnotherPage.aspx」:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (PreviousPage != null) 
    { 
     // Accessing previous page's controls 
    } 
}