2009-11-28 33 views
2

對於任何嚴重的軟件應用程序,錯誤記錄和反饋機制都是不可或缺的。在捕獲到錯誤日誌之後(可能使用log4net之類的東西),或者在發生異常的時候,您想提示一個消息框(參見下圖),爲問題道歉,然後詢問用戶是否希望將應用程序的當前狀態以及所有相關信息發送到您的電子郵件地址。 alt text http://windowscoding.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/blake/MicrosoftVisualStudio2008_5F00_32CB08FC.png錯誤記錄和異常通知庫

現在,這是容易實現,但非常繁瑣,我不想寫這個我的每個項目的一個單獨的類,並且我也不希望重新發明輪子。所以我正在尋找一個能夠很好地實現這個功能的開源庫。

異常通知庫的任何推薦組件?

我在做WinForms開發,但底層的概念應該是一樣的。

+0

你想在哪個.NET UI框架中使用它?可能是WinForms,WPF,Silverlight,ASP.NET WebForms,ASP.NET MVC還是AJAX庫? –

回答

0

是的,這是一種痛苦,但有希望。使用面向方面的編程,你可以集中你的錯誤記錄,看看this article。我沒有用過,但看起來很有希望。

0

我不想寫一個單獨的類 這對於我的每一個項目的

爲什麼不只是寫一個類在類庫來處理這個,然後從您的項目中引用它。這就是我們在我們公司所做的,它爲我們提供了很好的服務。

在我們的場景中,我們編寫結構如下一切數據庫:

tblMonitoredSystems 
    - SystemID 
    - SystemName 
    - SupportInfo 

tblEventSeverity 
    - SeverityCode 
    - SeverityDescription 

tblEvents 
    - SystemID 
    - EventDate 
    - EventText 
    - SeverityCode 

每個應用程序都有它自己的ID,當我們開始發展我們指定。我們將它存儲在app.config或web.config中。這使得我們的一個系統可以用於我們編寫的任何應用程序,具有很高的一致性。

+0

這將是一個好主意,但利用開源庫是一個更好的選擇 – Graviton

0

該對話框實際上是從Windows Error Reporting (WER)。儘管有「Windows」這個詞,但您也可以在您自己的應用程序中使用此工具,但我不確定您需要做什麼才能使其工作(組織上和技術上)。您可能想查看鏈接瞭解更多詳情。