10

当我尝试调用时出现以下异常

var log = LogManager.GetLogger(this.GetType());

在 Common.Logging.dll 中发生了“Common.Logging.ConfigurationException”类型的第一次机会异常

Common.Logging.dll 中出现“Common.Logging.ConfigurationException”类型的未经处理的异常

附加信息:无法从配置部分“common/logging”获取 Common.Logging 的配置。

这是一个 .NET 4 应用程序,其中引用了

  • log4net.dll
  • Common.Logging.dll
  • Common.Logging.log4net.dll

我的 app.config 有以下内容:

<?xml version="1.0"?>
<configuration>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
    </startup>
    <configSections>
        <sectionGroup name="common">
            <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
        </sectionGroup>
    </configSections>
    <common>
        <logging>
            <factoryAdapter type="Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter, Common.Logging">
                <arg key="level" value="ALL" />
                <arg key="showLogName" value="true" />
                <arg key="showDataTime" value="true" />
                <arg key="dateTimeFormat" value="yyyy/MM/dd HH:mm:ss:fff" />
            </factoryAdapter>
        </logging>
    </common>
</configuration>    

我试图这样打电话:

var log = LogManager.GetLogger(this.GetType());
log.Debug(m => m("testing"));

我错过了什么?

4

1 回答 1

28

startup如果您从配置中删除元素,它运行正常。

编辑:而不是删除,只需在 configsections 之后移动启动元素。

于 2011-07-21T17:13:47.977 回答