2012-07-28 60 views
0

我想知道是否有任何方式在母版頁中處理異常。讓我們假設這個非常簡單的情況:C#/ ASP:如何處理母版頁中的異常?

Site.Master:

protected void Page_Init(object sender, EventArgs e) 
    { 
     try 
     { 
      DoStuffFromChildPage(); 
     } 
     catch (Exception ex) 
     { 
      Response.Write(ex.Message); 
     } 

    } 

Default.aspx:

protected void Page_Init(object sender, EventArgs e) 
    { 
     throw new Exception("Test Exception"); 
    } 

這是我的想法/概念的只是一個簡單的概述。我試圖阻止在每個使用主頁的頁面中編寫try..catch代碼塊。

回答

1

我不久前看了一眼,從未發現任何真正的好方法。所有其他選項最終都比它更值得複雜。你可以考慮不使用try/catch,而只是使用自定義錯誤頁面,但我不確定這是你想要的。

您也可以創建自己的中央異常處理程序,並且儘管您仍然在頁面和母版頁中添加try/catch,但至少它們將在相同的位置處理。