VS2010中NET4项目中使用LOG4NET办法

两年以前项目中是用的log4net.dll是net2.0环境下面的,最近在官网http://logging.apache.org/log4net/download_log4net.cgi找到了net4.0环境下的文件可以下载了,经调试发现:net2.0中对应的配置文件在net4.0下已经不适用,需要做调整,调整后运行项目的时候记录日志功能才能生效。

具体设置步骤如下:

1、下载好log4net.dll文件后,找到net4.0版本的dll文件。拷贝到项目中根目录下的自定义目录lib文件夹下,然后在项目中添加对该文件的引用。

2、找到项目中Propertites目录下的AssemblyInfo.cs文件,在末尾添加一行调用配置文件的代码如下:
        [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"Config\log4net.cfg.xml", Watch = true)]

3、新建配置文件夹Config,并添加一个log4net.cfg.xml文件,配置文件内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section   name="log4net"   type="System.Configuration.IgnoreSectionHandler"   />
  </configSections>
  <log4net>
    <appender   name="LogFileAppender"   type="log4net.Appender.FileAppender">
      <param   name="File"   value="Log/log.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"   />
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x]  - %m%n"     />
      </layout>
    </appender>
    <root>
      <level   value="ALL"   />
      <appender-ref   ref="LogFileAppender"   />
    </root>
    <logger   name="SLog4net.Form1">
      <level   value="ALL"   />
      <appender-ref   ref="LogFileAppender"   />
    </logger>
  </log4net>
</configuration>

4、在服务或者窗体代码文件中添加如下代码来实例化:

public static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

5、在任何按钮或者是函数中添加调用代码即可:

logger.Debug("用Log4Net记录日志到文件中");

6、运行项目,即可发现在项目的bin目录下自动新建一个log文件夹,里面有一个log.txt文件记录下我们所需要的日志。

注意:本文调用办法不需要在app.config文件中再做任何配置。

上一篇:浅谈Log4net在项目中如何记录日志


下一篇:在类库项目中使用log4net(RollingFileAppender)记录日志