早上好,如何嘗試並捕獲重定向到錯誤頁面?
我有一個註冊表單,它將用戶添加到系統中。例如,當管理員在出生日期輸入字母而不是日期時,會發生異常。我沒有在web.config以下代碼:
「的customErrors模式=」 ON「的defaultRedirect =‘Error.aspx’」
如何嘗試和捕捉功能將管理員重定向到error.aspx時發生錯誤?
早上好,如何嘗試並捕獲重定向到錯誤頁面?
我有一個註冊表單,它將用戶添加到系統中。例如,當管理員在出生日期輸入字母而不是日期時,會發生異常。我沒有在web.config以下代碼:
「的customErrors模式=」 ON「的defaultRedirect =‘Error.aspx’」
如何嘗試和捕捉功能將管理員重定向到error.aspx時發生錯誤?
這聽起來像你需要捕捉異常,然後做一個手動重定向(Response.Redirect)到你的錯誤頁面。您可以將異常傳遞到會話變量或應用程序變量中的錯誤頁面。
由於您已捕獲此異常,它將不會重定向到錯誤頁面。如果你想這樣做,請嘗試重新拋出異常。
catch (Exception)
{
// your custom code
throw;
}
除非你做的事,該管理頁面將不重定向到,如果你發現自己異常error.aspx。
它只會重定向未處理的異常。
更新 從您的意見,看來你是用的ValidationSummary在網頁上建立某種驗證在一起,而不是依靠一個重定向到錯誤頁面的更好。你想要兩件不能放在一起的東西。
<asp:CompareValidator
id="dateValidator" runat="server"
Type="Date"
Operator="DataTypeCheck"
ControlToValidate="txtDatecompleted"
ErrorMessage="Please enter a valid date.">
</asp:CompareValidator>
如何將管理員重定向到錯誤頁面而無需嘗試並捕獲? – user1114676 2011-12-29 10:07:31
刪除try catch並查看會發生什麼... – Pleun 2011-12-29 10:08:45
系統崩潰並顯示錯誤頁面。我不希望系統崩潰:P – user1114676 2011-12-29 10:15:01
是不是更容易讓它失效? (如果dateofbirth!= DateTime的形式不添加。) – Moonlight 2011-12-29 09:53:02
在catch塊中重新拋出異常 – 2011-12-29 09:53:25