2011-09-15 17 views
2

情形:在C#ASP.NET 4在asp.net 4中通過登錄控件傳遞查詢字符串?

我做的項目,我有問題的頁面。當有人點擊問題(即Link Button)時,他被重定向到用戶可以給予回答的頁面,但首先他需要登錄。所以我把Login to Answer按鈕與問題ID這樣重定向用戶GuestLogin.aspx

protected void LoginToAnswwer_Click(object sender, EventArgs e) 
{ 
    int qidrequest = int.Parse(Request.QueryString["qid"]); 
    Response.Redirect("~/GuestLogin.aspx?qid=" + qidrequest); 
    //This is working OK 
} 

然後當我重定向到GuestLogin.aspx,我把下面的代碼在LoginButton建於Login Control

protected void LoginButton_Click(object sender, EventArgs e) 
{ 
    int qidrequest = int.Parse(Request.QueryString["qid"]); 
    Response.Redirect("QDisplay.aspx?qid=" + qidrequest); 
} 

哪一個不工作。

問:

如何使用內置login control的登錄按鈕,通過querystring在asp.net 4?

回答

2

你可以傳遞一個返回URL到登錄頁面,就像這樣:

Response.Redirect(String.Format("/auth/login.aspx?return={0}", Server.UrlEncode(Request.Url.AbsoluteUri))); 

在登錄頁面,認證用戶後:

Response.Redirect(Request.QueryString["return"]); 
+0

這會做什麼? –

+0

它可以讓你在登錄後回答案頁面重定向 –

+0

所以,我應該在哪裏把這個:?QID =」 + qidrequest –

1

Pass Parameters from One Page to Another Page using QueryString

//設置查詢字符串參數
注:的最大長度可以通過查詢字符串傳遞的字符串爲255

string URL =「QueryString.aspx?Name=」 + txtFirstName.Text + 「&Address=」 + txtAddress.Text + 「&City=」 + txtCity.Text ; 
//After Setting the Querystring Paramter values Use Response.Redirect to navigate the page 
Response.Redirect(URL); 

在導航中 頁的網頁加載事件,您可以訪問查詢字符串參數值象下面這樣:

lblName.Text = Request.QueryString["Name"].ToString(); 
lblAddress.Text = Request.QueryString["Address"].ToString(); 
lblCity.Text= Request.QueryString["City"].ToString(); 

這就是你必須使用查詢字符串傳遞參數

相關問題