C#使用log4net

如何在C#项目中使用日志,之前很纠结,不知道怎么使用log4net这玩意来记录程序日志,因为本身对C#就不了解,甚至没接触过,还是被赶鸭子上架,去做C#项目开发。废话不多说,言归正传,在写日志记录之前,其实也有在网上看了一些关于C#使用log4net的文章,在此做个自己的使用见解吧。


log4net是Apache的一个开源项目,可在Apache官网上下载log4net,下载后解压,将得到这样一个文件目录:

C#使用log4net_第1张图片

然后点击src文件夹,打开文件夹后,将得到这样一个文件目录

C#使用log4net_第2张图片

使用VS2008或者VS2010,或者更高版本打开解决方案,然后编译项目,在路径“\log4net-1.2.13-src\log4net-1.2.13\build\bin\net\2.0\debug”下,会看到一个编译好的dll文件以及log4net.xml,到此,log4net编译完毕。接下来到了最主要的调用部分了。


1、使用VS创建一个新项目(我使用的是VS2010),然后,将编译得到的dll文件和xml文件拷贝到项目debug(或release)目录下。

2、右击项目解决方案中的“引用”->添加引用,将log4net.dll引入。

3、创建新的工具类LogHelper,用于封装log的方法,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using log4net;

namespace LogDemo.log
{
    public class LogHelper
    {
        public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");

        public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");

        public static readonly log4net.ILog logdebug = log4net.LogManager.GetLogger("logdebug");
        /// 
        /// 输出Info信息
        /// 
        /// 
        public static void Info(string info)
        {
            if (loginfo.IsInfoEnabled)
            {
                loginfo.Info(info);
            }
        }

        /// 
        /// 输出Debug信息
        /// 
        /// 
        public static void Debug(string info)
        {
            if (logdebug.IsDebugEnabled)
            {
                logdebug.Debug(info);
            }
        }

        /// 
        /// 输出Error信息
        /// 
        /// 
        public static void Error(string info)
        {
            if (logerror.IsErrorEnabled)
            {
                logerror.Error(info);
            }
        }
    }
}
4、调用日志方法,直接使用静态调用的方式调用即可,如

LogHelper.Debug("hello,log4net");

5、注意问题:

当在编写代码或编译的时候,会出错,如

C#使用log4net_第3张图片

可右击解决方案->属性,将目标框架“.Net Framework  4 Client Profile”修改成“.Net Framework 4”,即可解决问题,如下图所示:

C#使用log4net_第4张图片

OK,至此,在C#中使用log4net的过程描述完毕,希望这个简浅的过程能帮到大家!


你可能感兴趣的:(C#)