我们正在使用 log4net 并希望在外部配置文件中指定它的配置(就像我们对其他部分所做的那样)。为此,我们将 App.config 中的 log4net 部分更改为:
...
<section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
...
<log4net configSource="Log.config" />
...
在 Log.Config 文件(与 App.config 相同的目录)中,我们有:
<log4net>
<appender name="General" type="log4net.Appender.FileAppender">
<file value="myapp.log" />
<layout type="log4net.Layout.SimpleLayout" />
</appender>
<root>
<appender-ref ref="General" />
</root>
</log4net>
但是,当我们运行应用程序时,不会创建任何日志文件(也没有完成日志记录)。没有错误消息输出到控制台。
如果我们将 Log.config 文件的内容移回 App.config(替换上面的第一行代码),它会按预期工作。知道为什么它不能在外部文件中工作吗?