Asp.net
UpdatePanel 異常處理
在我正在建構的 ASP.NET Web 應用程序中實現的 UpdatePanel 中發生異常時,它們會導致頁面上出現 JavaScript 錯誤,並在警報中提供一些高級錯誤輸出。這對於開發來說是可以的,但是一旦系統投入生產,由於多種原因顯然沒有好處。我可以用 Try Catch 等來控制麻煩的活動來控制 Javascript 錯誤,但在某些情況下,我想在首頁等上採取行動來支持使用者體驗。
如何優雅地處理 UpdatePanels 中發生的錯誤以提供無縫且無 Javascript 錯誤的實現?
在使用 UpdatePanel 時,您可以結合使用 ScriptManager(伺服器端)上的 AsyncPostBackError 事件和 PageRequestManager(客戶端)上的 EndRequest 事件來完全處理伺服器端錯誤。
以下是一些可以幫助您的資源:
自定義 ASP.NET UpdatePanel 控制項的錯誤處理
這是一個簡單的例子:
// Server-side protected void ScriptManager1_AsyncPostBackError(object sender, AsyncPostBackErrorEventArgs e) { ScriptManager1.AsyncPostBackErrorMessage = "An error occurred during the request: " + e.Exception.Message; } // Client-side <script type="text/javascript"> function pageLoad() { Sys.WebForms.PageRequestManager.getInstance(). add_endRequest(onEndRequest); } function onEndRequest(sender, args) { var lbl = document.getElementById("Label1"); lbl.innerHTML = args.get_error().message; args.set_errorHandled(true); } </script>