2008-11-13 99 views
2

我目前正在重構將其狀態打印到控制檯窗口的應用程序。目前,我做這樣的事情:將應用程序記錄到控制檯窗口

Console.Write("Print some status.....") 
//some code 
Console.WriteLine("Done!") 

現在,雖然這工作得很好,所有的邏輯console.writelines之間隱藏的,我覺得使得它非常難以閱讀。

我不知道是否有更好的方法來做到這一點,但我只是想問一下,看看是否有人想出了一個更好/更乾淨的打印應用程序狀態的方式到控制檯。

任何想法?

回答

3

看看Log4Net,它處理所有事情,但可能是對你的應用程序的矯枉過正,不知道。然而,知道Log4Net將有可能幫助你在某一天的路上,所以也許這是一個很好的機會了解它。

0

爲什麼不使用將錯誤寫入文本文件的Logger對象?您可能會遇到一些「優先級」錯誤消息,例如:Logger.print(新的優先級(「重要」),「blabla」); 這樣,你可以在你的文件中找到確切的時間和所有你想要的信息。

如果你絕對要控制檯,你可以在控制檯上使用優先級..所以它會只打印你能告訴什麼記錄器打印,如網絡錯誤等。

1

我第二次使用Log4Net。這是很容易使用它,而不必調用困難的部分 - 只要做到以下幾點: 在您的應用程序的Main()方法中,調用

log4net.Config.BasicConfigurator.Configure(new log4net.Appender.ConsoleAppender()); 

,設置了該記錄所有消息到標準輸出一個基本的控制檯記錄器。

在需要記錄類,創建一個新的ILog像這樣:

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof (MyClass)); 

然後在需要記錄的方法,調用

log.Debug("Print Some status ..."); 

一旦所有這些設置和加工。查看Log4Net文檔,瞭解如何設置更有用的日誌記錄。您可以執行許多不同類型的日誌記錄,而無需在代碼中更改日誌記錄調用。

相關問題