【发布时间】:2015-10-05 10:33:15
【问题描述】:
我正在开发一个简单的 .NET 应用程序,我正在尝试使用 log4Net 来记录一些有用的信息。 使用基本配置我没有问题。 当我尝试使用 xml 配置时,我遇到了以下问题:
log4net:ERROR 加载 XML 配置时出错 System.Xml.XmlException: 根级别的数据无效。第 1 行,位置 1。位于 System.Xml.XmlTextReaderImpl.Throw(String res, String arg) 处 System.Xml.XmlTextReaderImpl.Throw(Exception e) 处 System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace() 处 System.Xml.XmlTextReaderImpl。 ParseDocumentContent() at System.Xml.XmlTextReaderImpl.Read() at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace) at System.Xml.XmlDocument.Load(XmlReader reader) at log4net.Config.XmlConfigurator。 InternalConfigure(ILoggerRepository 存储库,Stream configStream)
这段代码如下:
var xmlConfig = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location+path.DirectorySeparatorChar+"logConfig.xml");
if (xmlConfig != null) XmlConfigurator.Configure(new FileInfo(xmlConfig));
else BasicConfigurator.Configure();
xml文件直接取自log4net文档,如下
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>
我该如何解决这个错误,我认为 xml 是正确的,假设文档中没有错误。
【问题讨论】:
-
检查您的 XML 中是否有不可打印的字符,stackoverflow.com/questions/291455/…
-
我刚刚弄清楚了自己。获取目录名称的括号错误,我会尽快发布自动回复!
标签: c# log4net log4net-configuration