log4net使用笔记(winform程序)

    在做winform程序的时候,用到了log4net,编译的时候总报没有添加引用的错误,而事实上已经添加了。后来经过多次调试,终于找到了问题,现标记一下,以供后来者翻阅!

    开发环境:vs2010  winform程序(web程序不存在上面提到的问题)

    先简单标记下log4net的使用,以供自己翻阅!

    1、添加引用log4net.dll

    2、在AssemblyInfo.cs文件尾部加上[assembly: log4net.Config.XmlConfigurator()]

    3、app.config里添加节点:

<!--log4net-->
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net-net-2.10"/>
  </configSections>

    上面的这个配置节点要放在app.config根节点 configuration 下,必须是第一个节点; 

 <log4net>
    <root>
      <level value="ALL"/>
      <appender-ref ref="RollingLogFileAppender"/>
    </root>
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\Test\"/>
      <param name="AppendToFile" value="true"/>
      <param name="MaximumFileSize" value="2048KB"/>
      <param name="MaxSizeRollBackups" value="10"/>
      <param name="StaticLogFileName" value="false"/>
      <param name="DatePattern" value="yyyyMMdd&quot;.log&quot;"/>
      <param name="RollingStyle" value="Composite"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="[%d] %t [%-5p] %c [%F - %L] : %n%m%n"/>
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="DEBUG"/>
        <param name="LevelMax" value="WARN"/>
      </filter>
    </appender>
  </log4net>

    这个配置写的是文本日志,有大小限制,按日期命名。关于log4net的其它配置,可参考:http://hi.baidu.com/haicheng00/blog/item/20abeef399dbb2d20a46e0b5.html

    4、在应用的类中加:  ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

    写日志:    if(log.IsInfoEnabled)log.Info("this is a test");

    这个配置在VS2010 winform项目中编译会报上面提到的错误,解决方法:

    在项目上右键=》属性=》目标框架 选择.net framework 2.0 ,然后再编译,2.0下编译也可能报错,但不用管它,再切回4.0编译就通过了!

    没深入研究,不知道为什么~~~

    第一次使用log4net,很浅显,标记供以后查阅!希望有经验的同胞多多分享!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值