2010-03-26 172 views
3

即時嘗試實現自定義錯誤頁面,我想要能夠做的是有一個單一的通用錯誤頁面,可以顯示發生的錯誤或其他信息(自定義錯誤消息)。當網站發生錯誤時,應將用戶引導至顯示錯誤消息的此頁面。ASP.net自定義錯誤頁面

因此,例如,如果我有一個頁面,試圖更新某些東西到數據庫,但出了問題,我應該重定向到錯誤頁面,這將有一些自定義文本,如「一直有錯誤與bla bla bla ...請聯繫管理員「。

希望這是有道理的

感謝

回答

2

在你的webconfig,你可以指定的customErrors元素:

<system.web> 
    <customErrors mode="RemoteOnly" defaultRedirect="Error.aspx" /> 
</system.web> 

的defaultRedirect中應該是路徑到您的錯誤頁面。這可以很好地指定何時發生一般錯誤,但它不會讓您訪問堆棧跟蹤。否則,你想在Application_Error的gloabal.asax中處理它,然後用自定義消息重定向到錯誤頁面。

+0

通常值得擁有靜態錯誤頁面(例如Error.htm),因爲在處理動態頁面Error.aspx的請求時可能會引發異常。 – Joe 2014-09-13 14:29:09

2

可以使用Application_Error事件處理程序在你的global.asax.cs(或global.asax.vb)文件來定義會發生什麼,當用戶遇到錯誤。

我以前用過這個。您可以獲得例外,向管理員發送電子郵件,並向用戶顯示消息,或將錯誤記錄到數據庫。

2

您可以在您需要添加到應用程序的項目中的global.asax文件的Application_Error部分中處理該問題。我可以詳細介紹,但這個鏈接已經應該提供足夠的信息,讓你去...

試試看如何使用Application_Error方法該頁面的部分,這應該給你一個良好的開端。

Custom Error Handling in ASP.NET