簡體   English   中英

如何使用WPF進行日志記錄?

[英]How to do logging with WPF?

我正在使用MVVM模式編寫WPF應用程序,並在選定位置使用Prism進行松散耦合,並且我希望在窗口中顯示日志消息並將其寫入文件。 每個方向的消息子集可能不一樣。

我想我應該通過EventAggregator (觀察者模式的MS-Prism實現)發布消息,並且有兩個對象訂閱:一個更新LogWindowViewModel ,另一個使用Enterprise Library記錄器記錄。 這是一個好主意還是我復制已經實現的東西?

每個輸出中日志消息不同的事實是限制因素。

擴展塊可能就足夠了,定義CustomTraceListenerILogFilter可能會為您解決問題。 這樣可以避免使用EventAggregator

歸結為誰知道記錄的內容和位置。 這些差異是否取決於日志記錄引擎中的值,例如嚴重性? 它們是由日志引擎的消費者驅動,因此與類本身緊密耦合? 這些類型的問題將決定您的選擇。

在不得不依賴於使用EventAggregator之前,利用日志記錄塊中的擴展點將是我的首選。

我認為一個想法很好。 似乎沒有那么多功能可以復制

我使用Common.Logging作為數據收集器,過濾器和分配器,用於可比較的東西,並為我自己的處理和ui輸出編寫了一個自定義appender。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM