log4net配置设置

log4net配置设置,log4net,log4net-configuration,Log4net,Log4net Configuration,我正在开发一个核心dll,其中有一个类库。我想使用log4net来启用异常日志记录。我在类库中有一个app.config文件,我在其中为log4net提供了设置。但是,当我测试类库时,log4net不会创建日志,直到我在调用项目中添加app.config,尽管我添加了[assembly:log4net.config.xmlconfigulator(Watch=true)]在类库的assemblyinfo.cs中,我使用log4net.ILog logger=log4net.LogManager.

我正在开发一个核心dll,其中有一个类库。我想使用log4net来启用异常日志记录。我在类库中有一个app.config文件,我在其中为log4net提供了设置。但是,当我测试类库时,log4net不会创建日志,直到我在调用项目中添加app.config,尽管我添加了[assembly:log4net.config.xmlconfigulator(Watch=true)]在类库的assemblyinfo.cs中,我使用log4net.ILog logger=log4net.LogManager.GetLogger(typeof(ErrorHandler)),其中ErrorHandler是处理log4net调用函数的类库类的名称。有什么问题吗

其次,我想告诉大家的是,我的dll的用户只需传递他们想要创建日志的位置,以及他们是想在事件查看器中创建日志,还是想从他们的app.config中创建日志文件?它们不会处理log4net的任何其他设置

对于第一个问题和第二个问题,是否有任何建议或代码片段?

对于.Net应用程序,只有“main”app.config处于活动状态。您的库配置文件将被忽略。您可以将设置传输到主配置文件,也可以为log4net使用外部配置文件。例如,您可以这样配置它(假设您将其命名为log4net.config):

[程序集:log4net.Config.XmlConfigurator(ConfigFile=“log4net.Config”,Watch=true)]
请注意,配置文件的结构有点不同:


.Net应用程序只有“main”app.config处于活动状态。您的库配置文件将被忽略。您可以将设置传输到主配置文件,也可以为log4net使用外部配置文件。例如,您可以这样配置它(假设您将其命名为log4net.config):

[程序集:log4net.Config.XmlConfigurator(ConfigFile=“log4net.Config”,Watch=true)]
请注意,配置文件的结构有点不同: