使用插件dll,log4net IsDebugEnabled不正确

时间:2013-12-17 11:42:25

标签: c# log4net

我为某个第三方创建插件项目,在该项目上我使用log4net.dll。但它无效(IsDebugEnabled为false且未创建日志文件。)。

我在一个示例应用程序(不是插件项目)中使用log4net.dll,该应用程序运行正常。 这意味着IsDebugEnabled为true并且创建了日志文件。

我遵循的以下步骤: 1.创建app.config文件并添加以下代码。

<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>

2.创建另一个配置文件,名称为log4net.config

<log4net>
<appender name="DEBUG_APPENDER" type="log4net.Appender.RollingFileAppender">
  <file value="${USERPROFILE}\Logs\Log.txt" />
  <additivity value="true" />
  <appendToFile value="true" />
  <maxSizeRollBackups value="1" />
  <maximumFileSize value="300KB" />
  <rollingStyle value="Size" />
  <staticLogFileName value="true" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date %-5level [%thread] %method - %message %newline" />
  </layout>
</appender>
<root>
  <level value="ALL"/>
  <appender-ref ref="DEBUG_APPENDER"/>
</root>

OutputDirectory是CopyAlways。

3.将此行添加到AssemblyInfo.cs文件中。

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
  1. 最后用于上课。

        private static readonly log4net.ILog Log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
        Log.Debug("DEBUG"); 
    
  2. 我在我的示例项目和插件代码中使用的上述代码。 但是它在示例项目中工作,而不是在插件项目中工作。

    我不知道我做了什么错。请给出一些解决方案。

0 个答案:

没有答案