Console.WriteLine
在 ac# 控制台应用程序中,有没有办法在通过和将文本写入控制台时获得通知Console.Write
?
每当此事件触发时,应该可以执行一些操作,例如在写入之前更改文本、将其重定向到文件或更改当前的 Console.ForegroundColor。
我知道实现此目的的一种简单方法是永远不要Console.WriteLine
直接调用,而是始终调用我自己的自定义包装器方法。
另一种更好的方法是编写一个自定义的ConsoleTraceListener
,并通过输出所有文本trace.TraceInformation()
。我已经做到了,而且效果很好。
但是,如果 Console.WriteLine 调用位于另一个应保持不变的程序集中,则此方法不起作用。
那么有没有办法在Console.WriteLine
不修改进行这些调用的代码的情况下对调用做出反应?