log4net:ERROR XmlHierarchyConfigurator: Cannot find Property [File] to set object on [TF.Log.FileAppender]

时间:2023-12-12 22:31:56

难受,香菇。

大概研究了两个多小时,搜了很多资料都没有很完美的答案,最后突然脑子就一闪一闪,才弄明白咋回事。

log4net:ERROR XmlHierarchyConfigurator: Cannot find Property [File] to set object on [TF.Log.FileAppender]

背景:我们遵循了适配器模式,为log4net在外面又包装了一层。外面那层名称为我上面错误显示的:TF.Log

和 log4net:ERROR XmlHierarchyConfigurator: Cannot find Property [locationInfo] to set object on [log4net.Layout.PatternLayout] 

其实是相似的错误,所以不要惊讶我的名字为何和log4net不一样。

咳咳~~接下来就要说正事了,请小盆友们排排坐,仔细瞅!!!

在log4net.config配置文件里面你可以随意添置节点。

eg:log4net:ERROR XmlHierarchyConfigurator: Cannot find Property [File] to set object on [TF.Log.FileAppender]

其中在这里的FileAppender类是我自己写的。

由于我没有在我自己写的FileAppender的里面添加上File属性,与配置文件里面的File对应起来,所以就说没有在FileAppender里面找到File节点。

解决方案:前提是自定义文件的话。如果你想在源码上修改。需要找到log4net项目中的FileAppender文件,进行修改。

log4net:ERROR XmlHierarchyConfigurator: Cannot find Property [File] to set object on [TF.Log.FileAppender]

由于还是菜鸟,里面有很多东西还没有研究透,以上若有不足,请多多指教,及时修改。