Could not find schema information for the element 'log4net' 在Message中显示可不理

将log4net  1.2.11添加到项目中,使用日志功能。

网上很多,下面简要说说他的步骤:

1.下载log4net,现在的最新版是1.2.11

2.引用log4net.dll

3.在AssemblyInfo.cs文件中添加

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

4.添加app.config(WinForm)或者在web.config当然也可以指定其他的文件名。但是在上一步添加ConfigFile属性即可。

5.编辑app.config,整理正确的如下: 注意编辑完app.config文件关闭然后编译,否则可能出现如题所示的message.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>

<log4net>
<root>
<level value="ALL" />
<appender-ref ref="SysAppender" />
</root>

<appender name="SysAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="Log\logs" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="30" />
<param name="MaximumFileSize" value="100MB" />
<param name="RollingMode" value="Date" />
<param name="DatePattern" value="'_'yyyy-MM-dd'.txt'" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date [%thread] %-5level %logger [%method] %L [%exception] - %message%newline" />
</layout>
</appender>
</log4net>

</configuration>

6.在程序中使用

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

log.Debug("test");即可。


刚开始出现如题所示的错误,我也找了很长时间。并且重新创建个新项目来测试。知道最后还是出现这个信息。当然了,假如你关闭app.config就不出现了。

假如配置正确,运行没有出现错误提示都应该出现日志。

只要调试的时候log不等于null。其他的就应该是app.config 设置错误。

我曾经在C++用过有DailyRollingFileAppender,而.net中没有。不知道是1.2.11给删除了还是就没有。旧版本没用过。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值