一、下载并引用log4net.dll
二、编写通用类
1 public static class AppLog 2 { 3 private static ILog log; 4 5 static AppLog() 6 { 7 XmlConfigurator.ConfigureAndWatch(new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config")); 8 // var logCfg = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config"); 9 log = LogManager.GetLogger(typeof(AppLog));10 }11 12 public static void Debug(object message)13 {14 log.Debug(message);15 }16 17 public static void DebugFormatted(string format, params object[] args)18 {19 log.DebugFormat(format, args);20 }21 22 public static void Info(object message)23 {24 log.Info(message);25 }26 27 public static void InfoFormatted(string format, params object[] args)28 {29 log.InfoFormat(format, args);30 }31 32 public static void Warn(object message)33 {34 log.Warn(message);35 }36 37 public static void Warn(object message, Exception exception)38 {39 log.Warn(message, exception);40 }41 42 public static void WarnFormatted(string format, params object[] args)43 {44 log.WarnFormat(format, args);45 }46 47 public static void Error(object message)48 {49 log.Error(message);50 }51 52 public static void Error(object message, Exception exception)53 {54 log.Error(message, exception);55 }56 57 public static void ErrorFormatted(string format, params object[] args)58 {59 log.ErrorFormat(format, args);60 }61 62 public static void Fatal(object message)63 {64 log.Fatal(message);65 }66 67 public static void Fatal(object message, Exception exception)68 {69 log.Fatal(message, exception);70 }71 72 public static void FatalFormatted(string format, params object[] args)73 {74 log.FatalFormat(format, args);75 }
三、编写配置文件
注意:配置文件在属性上面,要设置成 “始终复制”
四、启动设置
在Properties下的AssemblyInfo.cs文件中加入
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", ConfigFileExtension = "config", Watch = true)]
五、调用
AppLog.Info("开始关闭sqlExecute");