log4net,封装成库调用配置文件的问题

问题1:封装log4net成一个写文本库LogHelper,然后winform调用时候执行写入没有写入。

解决方法1:将LogHelper的配置文件拷到winform的根目录即可。

解决方法2:将配置文件的内容写到winform里面,然后LogHelper类库的AssemblyInfo内添加

[assembly: log4net.Config.XmlConfigurator(Watch = true)],意思就是说让这个库去调用调用者的config配置文件

(//[assembly: log4net.Config.XmlConfigurator(ConfigFileExtension = "config", Watch = true)]这个不行,可能是ConfigFileExtension = "config"这句名称不对应)

解决方法3:软件打开时候加载制定目录加载配置文件(“LogHelper.dll”是配置文件XML)

这时候也必须需要AssemblyInfo内添加[assembly: log4net.Config.XmlConfigurator(Watch = true)]

        private void Form1_Load(object sender, EventArgs e)
        {
            string Path_X = @"C:\Users\Administrator\Desktop\WindowsFormsApplication17\LogHelper\bin\Debug\LogHelper.dll";
            System.IO.FileInfo file = new System.IO.FileInfo(Path_X);
            //LogHelper.LogHelper LogHelper_ = new LogHelper.LogHelper();
            LogHelper.LogHelper.SetConfig(file);

        }

 

附件:配置文件代码


   


 

 
   
     
     
   

   
     
     
   

   
     
     
   

   
     
     
   

   
     
     
   

   
     
     
     
     
     
     
     
     
       
     

     
   


   
     
     
     
     
     
     
     
     
       
     

   


   
     
     
     
     
     
     
     
     
       
     

   

   
     
     
     
     
     
     
     
     
       
     

   

   
     
     
     
     
     
     
     
     
       
     

   

 

 

 

winform调用程序:

   try
            {
                LogHelper.LogHelper.WriteLog("正常日志记录!");
                LogHelper.LogHelper.WriteDebug("调试日志记录!");
                int a = Convert.ToInt32("ZZZ");
            }
            catch (Exception ex)
            { LogHelper.LogHelper.WriteLog("错误日志记录!", ex); }

 

 

 

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