0
我封裝EntLib 5日誌應用程序塊。我在文檔中看到,每次你想記錄時,你都應該看看「IsLoggingEnabled()」。這是一個方法,而不是一個屬性的事實的基礎上,它告訴我,是需要一些時間來完成的操作,但是...我可以緩存在一個局部變量的值,並檢查是否有可能登陸或不?IsLoggingEnabled()可以在運行時更改嗎?
乾杯。
我封裝EntLib 5日誌應用程序塊。我在文檔中看到,每次你想記錄時,你都應該看看「IsLoggingEnabled()」。這是一個方法,而不是一個屬性的事實的基礎上,它告訴我,是需要一些時間來完成的操作,但是...我可以緩存在一個局部變量的值,並檢查是否有可能登陸或不?IsLoggingEnabled()可以在運行時更改嗎?
乾杯。
你無法通過代碼,更改日誌記錄設置,如在Enterprise Library Document說。但是,你也可以讀到:
注:
運行時間更改日誌 應用程序塊自動 很短的時間後檢測到的配置和 日誌棧更新。 但是,您 無法通過修改代碼在運行 時間記錄堆棧。對於使用 你可以在運行時更新配置機制的 的詳細信息,請參見在運行時 更新 配置設置。
也就是說,雖然不能以編程方式啓用/禁用日誌記錄,但如果手動編輯配置,它可以在運行時更改。
因此,這就是爲什麼您每次都需要訪問IsLoggingEnabled()
操作,因此緩存它的值不是一個好主意。
我明白了。所以,在Web環境中不是問題,因爲每次更改web.config時,iis都會重置應用程序。但在Windows應用程序或服務中,您可以更改這些值,然後就會出現問題。我對嗎? – vtortola 2011-02-09 14:42:17