2010-03-01 100 views
1

我試圖訪問我的應用程序中的.NET System.Net跟蹤功能中可用的一些診斷信息。在運行時切換TraceSwitch

我知道我可以使用適當的.config設置跟蹤級別,但我希望能夠以編程方式切換開關。 (即在程序執行的特定部分執行跟蹤)。

有沒有辦法讓我在代碼中切換System.Net跟蹤功能使用的TraceSwitch/TraceSources?

我知道This SO question,但這種情況似乎不同,因爲潛在的問題是,有問題的庫正在爲每個寫入調用創建一個新的TraceSwitch。

+0

什麼是「System.Net跟蹤功能」?你的意思是.Net的系統命名空間? – Ikaso 2010-03-01 20:42:05

+0

8年後仍然是一個有效的問題。希望現在有一個解決方案! – willem 2017-11-21 09:27:13

回答

1

如果你不介意弄髒你的手,你可以嘗試使用反射來切換私人靜態布爾System.Net.Logging.s_LoggingEnabled(.NET 2)。

this question查看更多的細節和替代品。