是不是可以在app.config中重命名标签?
如果我使用以下
...
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
...
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">
<arg key="configType" value="INLINE" />
</factoryAdapter>
</logging>
</common>
...
一切都按预期工作(使用Common Logging进行日志记录已完成)。 但是,如果我更改节名称,则忽略配置,例如如果我将该组重命名为common 到mycommon。
<sectionGroup name="mycommon">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
...
<mycommon>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">
<arg key="configType" value="INLINE" />
</factoryAdapter>
</logging>
</mycommon>
...
有人知道这个伎俩吗?
答案 0 :(得分:1)
也许XML路径已连接到log4net,请尝试询问它们。
答案 1 :(得分:1)
解决方案在代码本身中找到......
public static class LogManager
{
/// <summary>
/// The name of the default configuration section to read settings from.
/// </summary>
/// <remarks>
/// You can always change the source of your configuration settings by setting another <see cref="IConfigurationReader"/> instance
/// on <see cref="ConfigurationReader"/>.
/// </remarks>
public static readonly string COMMON_LOGGING_SECTION = "common/logging";
private static IConfigurationReader _configurationReader;
所以你可以创建一个新类实现IConfigurationReader接口,扩展/替换LogManager(或替换字符串,但这需要重新编译Common.Logging)。
感谢Common.Logging的评论良好的代码......我在调试后得到了它。