2010-10-13 39 views
1

我們正在開發一個Web應用程序。此Web應用程序的所有頁面從基本頁繼承,我們有像Web服務中的錯誤處理策略

this.Error += new EventHandler(Page_Error); 

private void Page_Error(object sender, EventArgs e) 
    { 
     Helper.LogError(this.Context); 
    } 

上述工程中的所有網頁精緻漂亮的機制。

現在我們想在我們的應用程序中添加幾個Web服務。我們還有一個基礎服務,所有其他服務都將從其繼承。不過,我目前無法在webservice中設置適當的錯誤登錄機制。因此,我無法確定任何可以獲取錯誤信息的事件,而無需將Try Catch放在相應的服務方法調用中。

有人可以在這種情況下提出一種策略,以便爲Web服務提供通用的通用錯誤處理機制。

+0

看看ASP.NET健康監測。運作良好,但有一個困難的學習曲線(不難,只是有點奇怪)。 – leppie 2010-10-13 10:54:41

回答

0

假設通過.net網絡服務,你的意思是WCF,那麼你可以使用FaultContracts等來解釋here

也有另一種方式來處理它,這兩個WCF和ASMX Web服務的工作原理:

  • 讓你的數據傳輸對象從一個「錯誤信息」對象
  • 在每個服務繼承,有一個嘗試捕獲
  • 在捕獲,填充相關數據的錯誤信息
+0

對不起,我不清楚我的問題,但我的意思是傳統的Web服務(.asmx) – 2010-10-14 05:54:54