C# Log4net未正确加载配置
我有一个单独的类库,其中包含一个静态类,我在其中包装了Log4Net的使用。 类似这样的东西(见下文) 我很难记录任何东西。当我进入代码时,我会看到一些对象上的消息,例如ConfigurationMessage: {log4net:错误XmlConfigurator:找不到配置节 应用程序的.config文件中的“log4net”。请检查.config文件 对于和元素。配置 节应类似:} 这个类的assemblyinfo.cs,我添加了这个C# Log4net未正确加载配置,c#,asp.net-mvc,log4net,log4net-configuration,C#,Asp.net Mvc,Log4net,Log4net Configuration,我有一个单独的类库,其中包含一个静态类,我在其中包装了Log4Net的使用。 类似这样的东西(见下文) 我很难记录任何东西。当我进入代码时,我会看到一些对象上的消息,例如ConfigurationMessage: {log4net:错误XmlConfigurator:找不到配置节 应用程序的.config文件中的“log4net”。请检查.config文件 对于和元素。配置 节应类似:} 这个类的assemblyinfo.cs,我添加了这个 [assembly: log4net.Config.X
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
显然,它找不到这个文件?程序集正在从ASP.Net MVC web应用程序中使用,编译时,log4net.config被复制到/bin文件夹中,因此它在那里,但找不到它?程序集属性配置不能很好地与web应用程序配合使用,尤其是当程序集属性不在主程序集中时 改为使用
XmlConfigurator.Configure的重载,该重载引用文件本身:
// or wherever your file is
var fileInfo = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config");
if (fileInfo.Exists)
log4net.Config.XmlConfigurator.Configure(fileInfo);
else
throw new InvalidOperationException("No log config file found");
在web应用程序中,它在根目录中查找,而不是在bin中。
// or wherever your file is
var fileInfo = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config");
if (fileInfo.Exists)
log4net.Config.XmlConfigurator.Configure(fileInfo);
else
throw new InvalidOperationException("No log config file found");