C# 开发 Windows 服务 使用Log4net 组件 不能生成日志文件

使用VS2012开发Windows服务,需要使用Log4net日志组件记录业务情况,但是始终生成不了日志文件。

1         /// <summary>
2         /// 入口方法
3         /// </summary>
4         /// <param name="args">参数</param>
5         public static void Main(string[] args)
6         {
7             // 加载Log4net模块
8             LogHelper.SetConfig("log4net.config");
9         }

原因:不是生成不了,是日志文件生成的路径不在服务exe文件所在的路径下

解决办法:在编写Windows服务时,加上程序集路径即可

 1         /// <summary>
 2         /// 程序集路径
 3         /// </summary>
 4         public static readonly string BasePath = AppDomain.CurrentDomain.BaseDirectory;
 5 
 6         /// <summary>
 7         /// 入口方法
 8         /// </summary>
 9         /// <param name="args">参数</param>
10         public static void Main(string[] args)
11         {
12             // 加载Log4net模块
13             LogHelper.SetConfig(BasePath + "log4net.config");
14         }