• c#使用log4net的3种调用方法


    https://blog.csdn.net/summer_top/article/details/107961245

    第一步:下载log4net。
    右键项目引用,进入管理NuGet包。

    搜索log4net,下载安装。

    第二步:创建LogHelper类。
    public class LogHelper
        {
            private LogHelper()
            {
     
            }
            public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");
            public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");
            public static void SetConfig()
            {
                log4net.Config.XmlConfigurator.Configure();
            }
            public static void SetConfig(FileInfo configFile)
            {
                log4net.Config.XmlConfigurator.Configure(configFile);
            }
            public static void WriteLog(string info)
            {
                if (loginfo.IsInfoEnabled)
                {
                    loginfo.Info(info);
                }
            }
            public static void WriteLog(string info, Exception se)
            {
                if (logerror.IsErrorEnabled)
                {
                    logerror.Error(info, se);
                }
            }
        }
    第三步:配置Log4Net并输出日志,下面介绍三种调用方法。
    方法一:在已有App.config中配置Log4Net。
    App.config代码如下。



     
     
       
       


     
      
     
       
         
         
       

       
         
         
       

     
       
         
         
         
         
         
         
         
         
           
         

         
       

       
         
         
         
         
         
         
         
         
           
         

       

     

      

    在项目的 AssemblyInfo.cs 文件中注册Config文件

    [assembly: log4net.Config.XmlConfigurator(ConfigFileExtension = "config", Watch = true)]

    主程序调用:

    public MainWindow()
            {
                InitializeComponent();
                LogHelper.WriteLog("我是LogHelper日志输出:在已有App.config中配置Log4Net");
            }
    运行结果:

    方法二:项目中创建新的log4net.config文件。
    首先右键项目,添加新建项,添加新的应用程序配置文件log4net.config,log4net配置信息和方法一相同。

    log4net.config代码如下:



     
       
         
         
       

       
         
         
       

       
         
         
         
         
         
         
         
         
           
         

         
       

       
         
         
         
         
         
         
         
         
           
         

       

     

    再设置log4net.config的属性:将 “复制到输出目录” 的值改为 如果较新则复制。

    然后在项目的 AssemblyInfo.cs 文件中注册Config文件:

    [assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]


    ConfigFile: 配置文件名和路径,包括扩展名,文件相对于程序的根目录。

    ConfigFileExtension:配置文件的后缀名,缺省默认时'config',此属性不可和ConfigFile属性公用。

    最后主程序调用:

    public MainWindow()
            {
                InitializeComponent();
                LogHelper.WriteLog("我是LogHelper日志输出:在项目中创建新的log4net.config文件");
            }
    运行结果:

    方法三:显示调用配置文件
    首先创建log4net.xml配置文件,代码如下。



     
       
         
         
       

       
         
         
       

       
         
         
         
         
         
         
         
         
           
         

         
       

       
         
         
         
         
         
         
         
         
           
         

       

     

    使用LogHelper类中SetConfig(FileInfo configFile)方法配置log4net。 log4net.Config.XmlConfigurator.Configure(FileInfo(path)),path为log4net.xml的全路径。

    主程序调用:

     public MainWindow()
            {
                InitializeComponent();
                LogHelper.SetConfig(new FileInfo("D:\\Log4NetDemo\\log4net.xml"));
                LogHelper.WriteLog("我是LogHelper日志输出:显示调用");
            }
    运行结果:

    三种调用方法,都能够正常打印日志。

    备注:如有疑问,可留言交流。

  • 相关阅读:
    两个输入数组的非单一维度必须相互匹配
    2、基于pytorch lightning的fabric实现pytorch的多GPU训练和混合精度功能
    北大肖臻老师《区块链技术与应用》系列课程学习笔记[14]以太坊-状态树2
    LeetCode 四数相加II 哈希
    从源码中理解Spring Boot自动装配原理
    shell脚本
    网红长沙,为何常红?
    GaussDB数据库SQL系列-层次递归查询
    重要通知 | 3月31日前小程序未完成备案,将予清退!
    动态规划课堂2-----路径问题
  • 原文地址:https://blog.csdn.net/zunguitiancheng/article/details/136345064