Common.Logging配置异常

Jah*_*mic 9 .net c# app-config exception-handling common.logging

我尝试打电话时遇到以下异常

var log = LogManager.GetLogger(this.GetType());
Run Code Online (Sandbox Code Playgroud)

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>    
Run Code Online (Sandbox Code Playgroud)

我试着像这样打电话:

var log = LogManager.GetLogger(this.GetType());
log.Debug(m => m("testing"));
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

Kli*_*ger 28

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

编辑:只需在配置后移动启动元素,而不是删除.

  • 从[configscti​​ons元素上的文档](http://msdn.microsoft.com/en-us/library/aa903350%28v=vs.71%29.aspx):"如果此元素在配置文件中,它必须是<configuration>元素的第一个子元素." (3认同)