我有一個使用Microsoft企業日誌的LOG類。按照我最初的設計,這是一個靜態類,並使用「App.Config」。C#中需要一些設計建議
問題來了,當我必須使用這個類作爲我的類庫的一部分將被部署在GAC中。由於類庫沒有App.Config,我必須使用我的調用應用程序的「App.Config」。因此,我從靜態更改爲正常實例化類 。 我遵循在應用程序的配置文件中配置我的Logging配置路徑的方法。我得到了關於如何使用這個從這個線程(question-regarding-app-config-for-class-library-and-logging
我用這種方法,一切工作完全正常,當我只有一個類
使用Logger對象這是我的方法(簡單地說)反饋:
- 在我的主類(如:A類),我從App.Config中 獲得的價值
我開始記錄器類構造函數獲取配置文件的路徑
LogHandler = new LogHelper(logConfigFileLocation);
我在我的課
class A
我現在過這個問題絆倒使用此LogHandler
。
我有其他類Class B
和Class C
其中我想要使用此LogHandler
。我使用Class B
和Class C
in Class A
如果我做了一個LogHandler類的實例,我會得到一個新的日誌文件。
我該如何定義我的LogHandler類?我應該去單身嗎?
期待一些建議
乾杯,
KARTHIK
我想在任何一個類中創建LogHandler對象,並希望在所有類中共享。因爲對於LogHandler類的每個新實例,都會創建一個新的日誌文件,這不是我想要的。我想每個應用程序運行一個日誌文件 – KK99 2011-01-20 06:38:30
我建議的方法不會爲每個類創建一個新的日誌文件。你可以改變它通過引用傳遞(我會修改我的答案)。 – IanM 2011-01-20 07:05:03