log4net在Header和Footer之后插入换行符
从我的博客来看,我前几天还在学习Python,怎么现在又在写关于C#的内容呢?没错,但现在项目用Python写的那块不需要effort,而另一块用C#写的需要,所以我就又来写C#代码了,其实我对于C#还是一知半懂,不过有前辈的代码在,我边看边写,总算是过得去。关键是,我今天把C#的代码写完了,于是明天就又要去写Python的代码了,好吧,愿神保佑着我。
废话少说,言归正传。项目部分代码用到了log4net,本来我知道XXX.Info(),XXX.Error()的,但输出的日志文件中,在Header和Footer后面本来应该换行的地方却是"\r\n"这样的转换操作符。打开App.config,看到如下一段代码:
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="log-file.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value="[Header]\r\n" />
<param name="Footer" value="[Footer]\r\n" />
</layout>
</appender>
看来这是在layout节点中定义的,于是把\r\n改成\n,再试,发现还是\n被原样输出了,看来不是转换操作符的问题。
放狗一搜,在Apache的log4net的FAQ页面上发现了解决方法:把\r\n改成 即可。
附Apache的log4net的FAQ页面:http://logging.apache.org/log4net/release/faq.html