2011-06-18 60 views
2

當試圖訪問我站點母版頁中的搜索功能按鈕,而在登錄頁面時,頁面只是刷新,使用Server.Transfer而不是拋出「錯誤執行子請求爲「錯誤,從其他地方訪問是好的,可以這樣,我不能離開'安全區',而在登錄頁面?這與web.config有什麼關係,我不確定應該考慮哪部分代碼。Response.Redirect無法在登錄頁面

請提供建議。謝謝。

這是Click事件:

protected void Button1_Click(object sender, EventArgs e) 
     { 
      if (TextBox1.Text != "") 
      { 
       Session["txtValue"] = TextBox1.Text; 
       Response.Redirect("ProductSearch.aspx"); 
      } 
     }  
+0

基於此,有點難以遵循。你能稍微修改一下,使其更清楚嗎?例如 - mypage.aspx按鈕,這是一個鏈接按鈕,一個常規鏈接,一個常規按鈕,是什麼?你得到的具體錯誤是什麼? –

+0

您好,我曾經嘗試都LinkBut​​ton的和常規按鍵,這是我的單擊事件: 保護無效的button1_Click(對象發件人,EventArgs的){ 如果 (!TextBox1.Text = 「」){ 屆 [ 「txtValue」 ] = TextBox1.Text; Response.Redirect(「ProductSearch.aspx」); } } – k80sg

+0

你確定button1_click被調用嗎? – Radu

回答

1

您的登錄頁面不應該使用的網站母版頁。 (也不應該有任何錯誤頁面)。這樣,您在母版頁中運行的各種代碼將不需要在未經授權的情況下運行。

如果用戶未經授權,web.config將始終將請求發送回登錄頁面。如果你的代碼運行,你可以找到導致堆棧溢出的循環。

0

您試圖導航到的頁面(ProductSearch.aspx)是否受保護(即您需要先登錄才能訪問它)?如果是這樣,並且您尚未登錄,那麼嘗試導航到ProductSearch.aspx會自動將您重定向回登錄頁面(如您所描述的那樣)。

乾杯,韋恩。

0

首先,我會確保您的ProductSearch頁面中沒有任何內容會重定向您,可能會根據您的會話狀態或其他內容進行重定向。另外檢查母版頁,以確保它不是重定向你。最後,如果它仍然不能正常工作,我會使用調試器,然後逐步完成代碼。