我使用 System.Diagnostics.TraceSource 进行日志记录,我的侦听器之一是 TextWriterTraceListener。在追踪底漆中here http://blogs.msdn.com/b/bclteam/archive/2005/03/15/396431.aspx它的设置如下:
<listeners>
<add initializeData="output.txt"
type="System.Diagnostics.TextWriterTraceListener"
name="myLocalListener" />
</listeners>
问题是这总是附加到output.txt。如何在配置文件中将其更改为覆盖?
以编程方式,我想要的监听器是:
new TextWriterTraceListener(new StreamWriter("output.txt", false));
最简单的解决方案是自己制作。
我建议你继承自TextWriterTraceListener
并在你的构造函数中设置基数Writer
根据您的建议:new StreamWriter("output.txt", false)
.
一些示例代码:
public class MyTextWriterTraceListener : TextWriterTraceListener
{
public MyTextWriterTraceListener(string logFileName)
: base(logFileName)
{
base.Writer = new StreamWriter(logFileName, false);
}
}
这可以让您采取initializeData
配置文件中的参数来指定文件的名称,或者如果在代码中创建,则指定一个。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)